plot legends with custom symbols

56 visualizzazioni (ultimi 30 giorni)
Chris
Chris il 6 Apr 2015
Modificato: Chris il 6 Apr 2015
I am doing something like
>> XX = 0; YY = 0;
>> h1 = plot( XX, YY, ['.y'] ); hold on
>> set(h1, 'markersize', 30);
>> h2 = plot( XX, YY, ['.r'] );
This gives a very nice red dot on yellow background that I want to use as a special symbol, but is there a way to make these red on yellow dots appear as such in the legend box? Can you 'merge' handles, I know you can do >> legend([h1,h2],'foo','foo2'); but that gives two legend entries where I want the red/yellow dot treated as a combine unit as you see them in the plot.

Risposta accettata

Kelly Kearney
Kelly Kearney il 6 Apr 2015
It might be easier to just play around with marker size/line width combos to get the same effect without duplicating the plotted data:
h = plot(0,0, ...
'marker', 'o', ...
'markerfacecolor', 'r', ...
'markeredgecolor', 'y', ...
'linewidth', 2);
legend(h);
  1 Commento
Chris
Chris il 6 Apr 2015
Modificato: Chris il 6 Apr 2015
Very good alternative, thanks!
hh = plot(0,0,'oy'); set(hh, 'MarkerFaceColor','r'); set(hh, 'markersize', 7.5); set(hh, 'linewidth', 3); legend(hh, 'foo');
looks real good to me.

Accedi per commentare.

Più risposte (0)

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by