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

 Réponse acceptée

Matt Fig
Matt Fig le 4 Sep 2012
Modifié(e) : Matt Fig le 4 Sep 2012

0 votes

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 commentaire

surendra bhatta
surendra bhatta le 15 Mar 2019
my entire curve is filling with the text. what might be the solution

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 4 Sep 2012

0 votes

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.

Catégories

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by