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

for loopmultipleplot

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!

Best Answer

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