Borrar filtros
Borrar filtros

Make legend for lines

53 visualizaciones (últimos 30 días)
MINA
MINA el 22 de Mayo de 2016
Comentada: MINA el 23 de Mayo de 2016
Hello, My plot has two many lines but with only two different colors. When I want to add the legend I just want to write the legend for those two colors, but in the legend it shows me the same color. Can anyone please tell me how I can skip the lines with the same color?
Here is my code
p1=line([t1 t1]',[0 1],'color','red');
hold on
p2=line([t2 t2]',[0 1],'color','green');
legend([p1 p2],'T1','T2')
  2 comentarios
dpb
dpb el 23 de Mayo de 2016
If I give a value for t1, t2 and execute the above I get two colors for the legend.
Need something complete that causes the symptom we can run to try to duplicate the symptoms...
MINA
MINA el 23 de Mayo de 2016
t1=[1 2 3 4 5]'; t2=[3.5 6]'; p1=line([t1 t1]',[0 1],'color','red'); hold on p2=line([t2 t2]',[0 1],'color','green'); legend([p1 ;p2],'T1','T2')

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 23 de Mayo de 2016
linehandles = [p1, p2, p3, ...];
cols = cell2mat(get(linehandles, 'color'));
[~, uidx] = unique(cols, 'rows', 'stable');
legend(linehandles(uidx), {'first class', 'second class'})
  1 comentario
MINA
MINA el 23 de Mayo de 2016
Thanks. It worked.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by