排除图例中的实体(散点图和线条) - Matlab

时间:2016-11-15 12:20:12

标签: matlab scatter

我已尝试过多种组合来解决论坛等问题,但每个组合都无法解决我的问题。我有两个line图和两个scatter图。我希望仅显示scatter中的两个legend图。

这是我的代码:

line([-4, 4],[0,0], 'LineWidth', 2, 'Color', [0 0 0]); % Do not want this in Legend
hold on
line([0, 0],[-4,4], 'LineWidth', 2, 'Color', [0 0 0]); % Do not want this in Legend
hold on
i_h = scatter(valence_i, arousal_i,'MarkerEdgeColor', 'k', 'MarkerFaceColor', 'b');
legend(i_h, 'Induced Emotion')
hold on
p_h = scatter(valence_p, arousal_p, 'MarkerEdgeColor', 'k', 'MarkerFaceColor', 'r');
legend(p_h, 'Perceived Emotion')
axis([-4 4 -4 4])
xlabel('Valence')
ylabel('Arousal')

代码确实排除了line个对象,但最后一次调用legend会覆盖前一个。{1}}。 line个对象只是在图中间标出一个十字,因此legend中不需要它们。

1 个答案:

答案 0 :(得分:1)

您只需要一次传奇调用:

legend ( [i_h p_h], 'Induced Emotion', 'Perceived Emotion' )