Need help for loop keeps overwriting plots
Mostra commenti meno recenti
Hi everyone, I am working on some code and I am having issues. Every time I run the code instead of obtaining 5 unique figures, I get the same figure 5 times as my code reads all of the files but only plots the last one.
numfiles = 5;
mydata = cell(1, numfiles);
for i = 1:5
myfilename = sprintf('file%d.xlsx', i);
mydata{i} = xlsread('Base_01');
myfilename = sprintf('file%d.xlsx',i);
newdata{i} = xlsread('Hydrophone_01');
end
save('mydata.mat')
save('newdata.mat')
for i = 1:5 %why is it only plotting the last data set
thisfig = figure();
Data = mydata{1,i} (15005:21255,:);
subplot(3,1,1);
plot(Data(:,1),Data(:,2))
xlim([60 85])
title('Amplitude vs. Time for Base Data')
Code continues on further but I just shortened it here because this is the main issue I am having.
Thanks! Any help will be appreciated.
6 Commenti
per isakson
il 29 Ott 2018
Modificato: per isakson
il 29 Ott 2018
This code plots two diagrams on top of each other - as should be expected.
for ii = 1:2 %why is it only plotting the last data set
thisfig = figure();
Data(:,2) = randn( 17, 1 );
Data(:,1) = (1:17)';
subplot(3,1,1);
plot(Data(:,1),Data(:,2))
title('Amplitude vs. Time for Base Data')
end
Muhammad Akram
il 29 Ott 2018
per isakson
il 29 Ott 2018
Modificato: per isakson
il 29 Ott 2018
- "what does the randn do?" See randn, Normally distributed random numbers
- "two diagrams on top of each other" I mean two figures on top of each other. Run my code and see for yourself.
- I use R2018a
madhan ravi
il 4 Nov 2018
don't close question which has answer
Muhammad Akram
il 4 Nov 2018
madhan ravi
il 4 Nov 2018
Did you upload your file?
Risposte (1)
madhan ravi
il 29 Ott 2018
numfiles = 5;
mydata = cell(1, numfiles);
for i = 1:5
myfilename = sprintf('file%d.xlsx', i);
mydata{i} = xlsread('Base_01');
myfilename = sprintf('file%d.xlsx',i);
newdata{i} = xlsread('Hydrophone_01');
end
save('mydata.mat')
save('newdata.mat')
for i = 1:5 %why is it only plotting the last data set
thisfig = figure(i);
Data = mydata{1,i} (15005:21255,:);
subplot(3,1,1);
plot(Data(:,1),Data(:,2))
xlim([60 85])
title('Amplitude vs. Time for Base Data')
end
Categorie
Scopri di più su Surface and Mesh Plots in Centro assistenza e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!