How to plot 50 figures each has 3 curves for loop

I have a for loop that does calculation of three arrays and then I plot them in one figure. I plan to do the same for 50 figures.
for i=1:numel(x)
pcf(i)=pmd(i)/s(i);
pc(i)=pld(i)/s(i);
ph(i)=pud(i)/s(i);
end
pcf;
pc;
ph;
plot(x,pc,'g')
hold on
plot(x,pcf,'b')
plot(x,ph,'r')

3 Comments

Not a problem, you calculate them and plot. But showing 50 curves in a single figure doesn't show up the results. What you expect ?
Thanks for the feedback! I plan to plot 50 different figures. each figure has three curves calculated by for loop. The issue I faced is that the 50 figures are being made in a single figure.
What is the purpose of these lines:
pcf;
pc;
ph;
Isn't this a waste of time only?
You can simplify:
for i=1:numel(x)
pcf(i)=pmd(i)/s(i);
pc(i)=pld(i)/s(i);
ph(i)=pud(i)/s(i);
end
% to:
pcf = pmd ./ s;
pc = pld ./ s;
ph = pud ./ s;
% No loop needed.

Sign in to comment.

 Accepted Answer

You show us the code to create one set of lines. Then simply add this command before plotting:
figure()
axes('NextPlot', 'add'); % as: hold on (which can be omitted then)

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products

Release

R2021a

Community Treasure Hunt

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

Start Hunting!