How can I hold the previous "legend" on a plot?

168 visualizzazioni (ultimi 30 giorni)
I use the "hold" function to hold the previous plots. But how can I hold the previous legends, too?

Risposta accettata

sadel
sadel il 17 Giu 2011
here is the answer that I was looking for:
x=0:.01:10;
plot(x, sin(x), 'DisplayName','sin');
legend('-DynamicLegend');
hold all; % add new plot lines on top of previous ones
plot(x, cos(x), 'DisplayName','cos');
  6 Commenti
Harshia Mathur
Harshia Mathur il 28 Set 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
Walter Roberson il 28 Set 2021
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

Accedi per commentare.

Più risposte (3)

Gerd
Gerd il 14 Giu 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.

Gerd
Gerd il 14 Giu 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 Commenti
Rajani Metri
Rajani Metri il 5 Dic 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
Walter Roberson il 5 Dic 2020
Which MATLAB version are you using? And please explain what you are trying to do in more detail?

Accedi per commentare.


Andrea Cavallini
Andrea Cavallini il 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

Community Treasure Hunt

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

Start Hunting!

Translated by