name several curves within a loop

5 visualizzazioni (ultimi 30 giorni)
Nitin
Nitin il 4 Set 2012
Commentato: surendra bhatta il 15 Mar 2019
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
surendra bhatta
surendra bhatta il 15 Mar 2019
my entire curve is filling with the text. what might be the solution

Accedi per commentare.

Più risposte (1)

Walter Roberson
Walter Roberson il 4 Set 2012
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

Scopri di più su Fit Postprocessing in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by