Put figures (.fig) in one page
9 次查看(过去 30 天)
显示 更早的评论
Hi, I've 4 figures (1.fig, ..., 4.fig) and I want to put them in one page without running another time my program (it take 1 week) in order to have a page with the 4 figures (2 by 2) and export it in eps. Pleas give me a solution (matlab code)
thank you
0 个评论
采纳的回答
Matt Fig
2011-5-22
Before you do anything, save each of your four figures as a MATLAB figure so your figures aren't lost!
Once you do that, close them all and run this example. The example makes four figures then pauses for you to look at them. When you are ready, press return at the command line to copy them all to a single figure. Once you understand the example, build your own to work with your figures. You will have to open your figures again, then run the relevant part of the code.
% Make some figures...
figure
plot(1:10)
figure
plot((1:10).^2)
figure
plot((1:10).^3)
figure
plot((1:10).^4)
pause % Wait for user to hit return...
fh = figure;
for ii = 1:4
subplot(2,2,ii)
P{ii} = get(gca,'pos');
end
clf
F = findobj('type','figure');
for ii = 2:5
ax = findobj(F(ii),'type','axes');
set(ax,'parent',fh,'pos',P{6-ii})
close(F(ii))
end
0 个评论
更多回答(2 个)
Ben Mitch
2011-5-22
There is an easy way, which depends a bit on what you've got in your figures. Assuming you've only got 1 axis per figure, this would work.
open 1.fig
a1 = gca;
open 2.fig
a2 = gca;
figure(3)
set(a1, 'parent', 3, 'position', p1);
set(a2, 'parent', 3, 'position', p2);
You'll have to figure out p1 and p2 for yourself. If you do have more axes than one per figure, try the following to get a list of them.
open 1.fig
a1 = get(gcf, 'children');
...
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Interactive Control and Callbacks 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!