making multipanel figure using MATLAB code

is there a way to write a simple code which can help me in making a multipanel figure, and allow figure selection at each panel?
Figure which I want to generate lookalike any figure which is published in journals.
any suggession or help would be greatly appreciated

7 Comments

Figures can't be nested inside other figures, so I'm not entirely sure what you mean. Do you mean a figure that contains multiple uipanels, each of which contains an axes object?
What does "I want to generate lookalike any figure which is published in journals" mean?
Hi Matt,
Thanks for clarifying on it. Yes I want to create a figure with multiple uipanels, which of which contains a separate axises?
"I want to generate lookalike any figure which is published in journals" I mean is that I could save my time required to generate such figures in illustrator, if I can use MATLAB to generate similar figure?
Is there a particular reason for wanting multiple uipanel() instead of subplot() ?
ohh I thought both are the same.
subplot() creates a graphics axes from a rectangular subsection of a figure, location automatically determined according to the NxM parameter you give it. This axes is directly suitable for drawing on, but axes cannot contain any uicontrol() objects.
uipanel() creates a rectangular control subdivision of a figure, location having been given by you in coordinate notation. This control subdivision can contain nearly any kind of graphics object, including uicontrol or axes. You need to add an axes into a uipanel in order to be able to draw within the panel. uipanel() is a container object, not a drawing object.
There are sometimes reasons for dividing into uipanel() instead of subplot(). In particular, uipanel() can [with some work] have their content scrolled, but axes cannot have their content scrolled (only panned)
Thanks for such a helpful note on it. I will definately read more on it. just wondering if you can share some example of uipanel(), could make my life easier...
Best Regards, Farhan
h = uipanel('Position', [31 41 592 635]);
Then use h where you would otherwise use a figure number.

Sign in to comment.

Asked:

on 4 Oct 2012

Community Treasure Hunt

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

Start Hunting!