Question about matlab figure legend.

  • MATLAB
  • Thread starter beanlet
  • Start date
  • #1
6
0
Hey folks,

I need to save a figure from my matlab GUI, which is just a simple plots. Because this plot is the child of a uipanel, so I just use "copyobj" command to copy the handle of the uipanel to the new figure. However, although everything is copied, the legend is not really showing up. I am confused and do not know how to do the setting.

legend does not have the "Parent" property, so I cannot just do the same setting as the other graphical objects in the plots. Can anyone give me any suggestions on this? Thanks a lot. :-)

I attached my screen shots here, and you can see the legend is gone...
 

Attachments

  • GUI.png
    GUI.png
    46.2 KB · Views: 524
  • Saved_figure.png
    Saved_figure.png
    46.9 KB · Views: 462

Answers and Replies

  • #2
MATLABdude
Science Advisor
1,655
4
In this matter, MATLABdude is a MATLABdud.

http://simpsons.wikia.com/wiki/Disco_Stu

EDIT: Legend doesn't have a handle. However, if you pass the string used to generate the first legend in the first plot, you can just recreate it in the second. You probably know this, but you can also make a matrix of strings (a cell array) using the {} braces. For instance:

>> bowlTeam = {'Fred', 'Tammy', 'Joe'};

Using bowlTeam{3} returns Joe. I believe bowlTeam(3) returns either an e, or is a syntax error. Mathworks documentation page on cell arrays:
http://www.mathworks.com/access/helpdesk/help/techdoc/matlab_prog/br04bw6-98.html
 
Last edited:
  • #3
6
0
Thank you very much. I just tried to get that axes object, and recreate the legend. It works well. :-)
 

Related Threads on Question about matlab figure legend.

  • Last Post
Replies
1
Views
3K
  • Last Post
Replies
3
Views
7K
  • Last Post
Replies
4
Views
1K
  • Last Post
Replies
3
Views
11K
  • Last Post
Replies
4
Views
2K
  • Last Post
Replies
2
Views
2K
  • Last Post
Replies
1
Views
748
  • Last Post
Replies
5
Views
5K
Replies
4
Views
2K
Replies
3
Views
2K
Top