Plot - add legend individually

15 次查看(过去 30 天)
How can I update the legend of each plot individually rather than at the end of the code ?
plot(x1, y1, '-vr', 'LineWidth', linewidth, 'MarkerSize', markersize);
legend('Algorithm 1');
plot(x2, y2, '-vr', 'LineWidth', linewidth, 'MarkerSize', markersize);
legend('Algorithm 2');
The code above overwrites the legend for Algorithm 1
  1 个评论
ROBIN KUMAR
ROBIN KUMAR 2022-2-18
The same problem I have been facing with R2021a version. Please help me execute the same..

请先登录,再进行评论。

采纳的回答

Adam
Adam 2017-7-13
编辑:Adam 2017-7-13
If you are working with a fairly recent version of Matlab (> R2014b I think) then you can edit an existing legend if you keep the handle to it:
figure; hAxes = gca;
plot(hAxes, x1, y1, '-vr', 'LineWidth', linewidth, 'MarkerSize', markersize);
hLegend = legend( hAxes, 'stuff' );
hold( hAxes, 'on' )
plot(hAxes, x2, y2, '-vr', 'LineWidth', linewidth, 'MarkerSize', markersize);
hLegend.String{2} = 'other stuff';
It is more efficient to do all the plots first and then put the legend up for all of them though.
  3 个评论
Gopal New
Gopal New 2020-11-30
编辑:Gopal New 2020-11-30
Hi,
when i run the above code, i only get one legend. i'm trying to do something similar, but can't make it work. i'm using R2016.
ROBIN KUMAR
ROBIN KUMAR 2022-2-18
This doesn't work at all. The same problem I have been facing with R2021a version. Please help me execute the same..

请先登录,再进行评论。

更多回答(1 个)

ROBIN KUMAR
ROBIN KUMAR 2022-2-18
The same problem I have been facing with R2021a version. Please help me execute the same..

类别

Help CenterFile Exchange 中查找有关 Legend 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by