Effacer les filtres
Effacer les filtres

One last question about plotting cell array

1 vue (au cours des 30 derniers jours)
Jared
Jared le 2 Nov 2011
So I get that I can have my data arranged like:
x1, y1, linespec1, x2, y2, linespec2, etc...
What about creating a legend? Can I add in the legend string after linespec?

Réponse acceptée

Walter Roberson
Walter Roberson le 2 Nov 2011
No. The standard linespec strings are the only per-line properties you can set in a single plot() call. You will have to use the plot() form that returns the lineseries handles and set() the DisplayName property of each handle.
  3 commentaires
Jan
Jan le 3 Nov 2011
@Jared: I share your confusion. I ancient Matlab versions PLOT and LINE replied the same vector of line handles. But today there are differences:
plotH = plot(rand(5)); get(plotH(1));
lineH = line(1:5, rand(5)); get(lineH(1));
Unfortunately both handles claim that they have the Type 'line'. Is there a reliable method to dinstinguish them automatically?
Walter Roberson
Walter Roberson le 3 Nov 2011
One way would be that lineseries have four extra (visible) properties that line do not have: XDataMode XDataSource YDataSource
ZDataSource
Another way is that
class(handle(h)) is 'line' for line objects, but 'graph2d.lineseries' for lineseries objects.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by