MontageFigures

Creates Montage (subplots) of Specified Figures and their subplots
1.8K Downloads
Updated 3 Aug 2010

View License

This creates a new figure containing subplots of other currently open figures including all non-colorbar axes in the figure (i.e. including subplots).

example: i have figures 12 15 18 open. and I want a montage with 12 and 15 on the first line and 18 on the next.

mfig = MontageFigures([12 15 18], 2,2)

where the horizontal length is the first 2
vertical length is the second 2. This will leave the 4th subplot (2,2) empty.

mfig is the handle to the new figure.

This is similar to the code figs2subplots, but after very few attempts, I couldn't get that to work. So here's something that should work. And it's very simple.

You specify the axis properties that you'd like copied over from the old figures at the beginning of the file. I have a prototype set included.

The code simply copies all of the children of each figures' axes and puts them as children of the subplot axes. Then copies the specified properties to the subplot axes.

In the code you can now adjust size/position of new fig, margins, spacing between subplots. You can also set whether to add ticks and labels only to perimeter plots, if you have many images with the same limits/labels.

If you want to do this with unopened files use the montagefigurefiles(columns,rows), and you will be prompted for the files to use.

If you don't like this script, you can try using:
http://www.mathworks.com/matlabcentral/fileexchange/3939-import-fig-file-to-axes
which I didn't bother to look at, but I'm open to it being better. :)

Cite As

Nick Sinclair (2024). MontageFigures (https://www.mathworks.com/matlabcentral/fileexchange/27713-montagefigures), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes
1.6.0.0

fixed a typo, referring to incorrect axis for xlabel

1.5.0.0

added screenshot

1.4.0.0

Fixed problem of copying over legends as separate axes, and added ability to copy legends in an appropriate way.

1.3.0.0

Added montagefigurefies.m AND ability to replot the subplots of other figures.

1.2.0.0

Can now adjust
1) size/position of new figure
2) spacing between subplots
3) margins
4) whether to label only perimeter subplots.
These options must be changed in the code, not as parameters to the code. Just too lazy to add that.

1.1.0.0

just verified it works fine with 7.10 2010a.

1.0.0.0