How can I hold the previous "legend" on a plot?
236 views (last 30 days)
Show older comments
I use the "hold" function to hold the previous plots. But how can I hold the previous legends, too?
0 Comments
Accepted Answer
sadel
on 17 Jun 2011
6 Comments
Harshia Mathur
on 28 Sep 2021
worked for me as well, Do you know anyway to customise this? I want to append a string, otherwise all it's saying is data1 , data2 etc..
Walter Roberson
on 28 Sep 2021
@Harshia Mathur example
x=0:.01:10;
for alpha = [1 5 9]
plot(x, nthroot(sin(x).^alpha,7), 'DisplayName', "sin^{" + (alpha/7) + "}");
hold on;
end
hold off
ylim auto
legend show
More Answers (3)
Gerd
on 14 Jun 2011
For example I you would like to show the sin and cos you would use
t=[0:0.1:10]
x=sin(t)
y=cos(t)
plot(t,x)
hold
plot(t,y,'r')
legend('sin','cos')
In your case you have to build the legendstring with the two different "strings" you want to show.
0 Comments
Gerd
on 14 Jun 2011
Hi sadel, to get the current legend use
% you have to have a legend on the current plot
get(legend(gca),'String'); % get legend from current axes.
% Now you can set the legend of the new plot
Gerd
5 Comments
Rajani Metri
on 5 Dec 2020
Hello,
but legend holding only text. It is showing legend indicators as lines, instead of asteric lines, which I used. It is not holding the marking points of plots. For holding Marker points of respective plots, what to do?
Thank You.
Walter Roberson
on 5 Dec 2020
Which MATLAB version are you using? And please explain what you are trying to do in more detail?
Andrea Cavallini
on 6 Feb 2018
Quick and dirty... at last (before hold off), draw something out of the scope of the plot, but with the right legend symbols. That will do
0 Comments
See Also
Categories
Find more on Legend in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!