How to plot multiple values of a variable in one graph?
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I put 5 txt files into a loop to graph the FFT and PDS continuously. They are audio files converted to txt files. I used "findpeaks" to find all peaks in the graphs. I then used "max" to find the max peak in each of the 5 graphs. I got 5 answers for the same variable. (l=max(v)). How do I plot all of these answers in one graph? Below is an example of my work. Here is the values I received for the max for each graph, l = 7.1537e+08, l = 1.3054e+09, l = 2.4736e+09, l = 3.4960e+09, l = 2.4039e+09
numfiles = 5;
y = cell(1, numfiles);
for k = 1:numfiles
myfilename = sprintf('file%d.txt', k);
y{k} = importdata(myfilename);
plot(y{k})
m=(abs(fft(y{k})));
%n=m(1:y{k}/2);
%plot(n);
pwelch(y{k})
v= pwelch(y{k})
plot(v)
xlim([0 4000])
findpeaks(v)
l= max(v)
end
2 comentarios
Matt Dickson
el 12 de Jun. de 2018
To clarify, you want to plot the maximum value (you call it l). What are you plotting it against? Index of the file?
Respuestas (2)
Arun Mathamkode
el 15 de Jun. de 2018
I believe you want to plot the maximum value for each graph against the index file. You can simply store maximum values in l as an array and plot the array.
In the loop, change l=max(v) to l(k)=max(v) and use plot(l) after the loop.
2 comentarios
Ver también
Categorías
Más información sobre Annotations en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!