Filter löschen
Filter löschen

append legend in matlab 2015

10 Ansichten (letzte 30 Tage)
N/A
N/A am 26 Mai 2015
Beantwortet: Tyler Rhodes am 11 Okt. 2018
Hi,
In previous versions of Matlab, I could append a legend if I wanted or not, using the following code. This was very handy in case I didn't have all handles of plots at the beginning and just wanted to append the list of new plots. Any idea how to do this in Matlab 2015?
Many thanks M
[LEGH,OBJH,OUTH,OUTM] = legend; % reading handles
LEGH = legend([OUTH;hnew],OUTM{:},'newPlotName'); % append new plot
where 'hnew' is the handle of the new plot and ''newPlotName' its name.
  2 Kommentare
Alexander Mueller
Alexander Mueller am 26 Mai 2015
Here's an example of how to update the legend to include newly added plots.
% plot 3 lines and add a legend
p=plot(magic(3));
l=legend(p,'plot1','plot2','plot3');
% add a fourth line, specifying the DisplayName
hold on
plot([5 5 5],':','DisplayName','plot4')
% turn legend off and back on.
legend('off');
legend('on');
N/A
N/A am 12 Jun. 2015
Hi Alexander, I just realized I have received your response, thanks.
I am missing a final point from your explanation above. What I am really interested in, is to remove (for example) the legend of the yellow line, while keeping the yellow line and all other legends... If you have any idea please let me know.
Thanks

Melden Sie sich an, um zu kommentieren.

Antworten (2)

JaeJun Lee
JaeJun Lee am 27 Dez. 2016
In my version(R2015b),
legend('on') did not work for me. It just created a legend named with 'on'. But 'show' just worked well.
legend('off')
legend('show')

Tyler Rhodes
Tyler Rhodes am 11 Okt. 2018
%first get the legend handles
old_legend=findobj(gcf, 'Type', 'Legend');
%then append the legend with new entry
legend([old_legend.String,'new_entry'])

Community Treasure Hunt

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

Start Hunting!

Translated by