Unable to plot multiple graphs using a loop, only plots final graph

4 views (last 30 days)
I'm trying to extract data from files to create individual plots - one for each of the files. However with my following code, it only plots what I believe is the final graph, and not any of the others. Each file contains 25 lines of headers then has values separated by the 'tab' delimiter.
for i = 1:28
fid = fopen(ASCname{i},'r'); %ACSname is a cell containing the names of the files
d= textscan(fid,'%f%f','HeaderLines',25);
plot(d{1},d{2})
xlabel('Wavenumber / cm^-^1')
ylabel('Absorbance')
fclose(fid);
end
Without using the loop (ie. by copying the section of code in the loop and simply iteratively increasing the index) yields multiple graphs but this is not only horribly ugly code but is completely impractical for my large dataset.
I'm stuck - please help!

Accepted Answer

KSSV
KSSV on 19 Aug 2020
for i = 1:28
fid = fopen(ASCname{i},'r'); %ACSname is a cell containing the names of the files
d= textscan(fid,'%f%f','HeaderLines',25);
figure(i)
plot(d{1},d{2})
xlabel('Wavenumber / cm^-^1')
ylabel('Absorbance')
fclose(fid);
enda

More Answers (0)

Categories

Find more on App Building in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!