name several curves within a loop

Hello,
I am plotting about 80 curves on the same plot.
In order to differentiate between each curve, i would like to name each curve on the plot within the for loop shown below:
for k = 1:80
[a,b]=test(a1,b1);
labels = cellstr(num2str([k]')); % not sure about this one*bold*
h=plot_curves(a, b, 'r',5);
hold on
end
Thanks,
Ash

 Risposta accettata

Matt Fig
Matt Fig il 4 Set 2012
Modificato: Matt Fig il 4 Set 2012
You could put a text on each curve. But placing the text could be tricky with that many curves on one plot.
x = 0:.01:1;
L = floor(length(x)/2);
hold all
for ii = 1:4
plot(x,x.^ii)
text(x(L),x(L).^ii,sprintf('%i',ii))
end

1 Commento

my entire curve is filling with the text. what might be the solution

Accedi per commentare.

Più risposte (1)

labels{k} = num2str(k);
Then at the end of the loop,
legend(labels)
This assumes that plot_curves is constructing exactly one line object per loop iteration.

Categorie

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by