Figure legend: how to prevent entries from showing?

173 views (last 30 days)
Hi all,
My code plots a figure with a few curves, after the code finishes running, I manually add the legend like this:
legend('original', '', '', 'proposed', '', '', 'Proposed with optimisation')
So my figure looks like:
I do not need these extra lines after the 'original' and 'proposed', how can I remove the 2, 3, 5, 6th entries? Or how can I add the legend without these? i.e. a legend with only 3 entries?
Many thanks!

Answers (2)

Gulam Dastagir Khan
Gulam Dastagir Khan on 7 Oct 2020
If the figure is already plotted, then do the following
  1. Select the line which you want to make invisible in legend.
  2. Then select the arrow icon from the top, this will open the property inspector.
  3. Scroll down in the property inspector dailouge box.
  4. click parent/child item
  5. In the handle visibility salect the off option.
Your line will not be appeaar in the legend now.

Are Mjaavatten
Are Mjaavatten on 22 Feb 2018
Edited: Are Mjaavatten on 22 Feb 2018
h = plot(....);
legend(h([1,4,7]),'original','proposed','proposed with optimisation')
  3 Comments
Are Mjaavatten
Are Mjaavatten on 25 Feb 2018
With your plot (or rather: axes) in focus, try:
h = get(gca,'children')
Most likely, the lines are in the correct order, but you may have to experiment a little. Typing h(1) will show details like linestyle and marker of this line.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!