Hold on not working when plotting graph from a cell array

Hello all,
I have extracted several sheets of data from an excel file (Cellulose.xlsx) into a cell array (Cellulose) and I wanted to plot the data of each sheet on the same graph. However the graph only shows the last plot even though i have used the hold on function. Can someone suggest a solution? Thanks!
Cellulose='Cellulose.xlsx';
heating_rate={'10kmin','20kmin','30kmin','40kmin','50kmin',...
'60kmin','70kmin','80kmin','90kmin','100kmin'};
n=length(heating_rate);
data=cell(n,1);
for idx=1:n
data{idx}=xlsread(Cellulose, heating_rate{idx});
end
figure(1); hold on;
for i=1:n
x1=data{n,1}(:,1)+273.15;
y1=data{n,1}(:,3);
plot(x1,y1);
end
hold off;

1 Comment

Attach the data{} cell in a .mat file so that we can try it.

Sign in to comment.

 Accepted Answer

This works:
figure(1)
hold on
for i=1:n
x1=data{i,1}(:,1)+273.15;
y1=data{i,1}(:,3);
plot(x1,y1);
end
hold off

5 Comments

Thanks for your reply, but it isnt working :/
Your subscripts need to be with respect to ‘i’, not ‘n’. See my edited Answer.
Thanks Star!!! it works!! :)
My pleasure!
Then please vote for him and "Accept this answer" so he gets credit for it.

Sign in to comment.

More Answers (0)

Asked:

on 19 Aug 2017

Edited:

on 19 Aug 2017

Community Treasure Hunt

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

Start Hunting!