How to plot multiple values of a variable in one graph?

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 commentaires

To clarify, you want to plot the maximum value (you call it l). What are you plotting it against? Index of the file?

Connectez-vous pour commenter.

Réponses (2)

Arun Mathamkode
Arun Mathamkode le 15 Juin 2018

0 votes

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 commentaires

This is not exactly what I want. I want to plot the values in a somewhat waterfall type graph so I can stack up numerous values against one another to find the peak value. I will use this to set limits. So I want to plot each 1 values against the max height reached.
I want more of a scatter plot of the data so I can compare the results.

Connectez-vous pour commenter.

James Sheldon
James Sheldon le 19 Juin 2018

0 votes

Okay. I will try that and see how it turns out. Thank you.

Catégories

En savoir plus sur MATLAB dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by