MATLAB Answers

Plot already exisitng graphs onto one graph

1 view (last 30 days)
Hadi
Hadi on 2 Jun 2011
Answered: Farhad Sedaghati on 17 Jul 2015
I have two graphs generated by a code and now I want to use the code blow to plot them on a 2x1 figure. but the resulting figure, first doesn't show the graphs and second includes only one blank set of axes on top half of the page.
...................
fig1=openfig('firstpane')
fig2=openfig('secondpane')
subplot(211)
plot(fig1)
subplot(212)
plot(fig2)
..............
is there any easier way? I can't write a loop to generate the two figures at once because the code is quiet heavy and I'd get memory problem.
Thanks

  0 Comments

Sign in to comment.

Accepted Answer

Matt Fig
Matt Fig on 2 Jun 2011
I assume that you have two saved MATLAB figures, firstpane.fig and secondpane.fig, each with one axes object.
fh = figure;
P = subplot(2,1,1);
P1 = get(P,'pos');
delete(P)
P = subplot(2,1,2);
P2 = get(P,'pos');
delete(P)
fig1 = openfig('firstpane');
C = copyobj(gca,fh);
set(C,'pos',P1)
close(fig1)
fig1 = openfig('secondpane');
C = copyobj(gca,fh);
set(C,'pos',P2)
close(fig1)

  0 Comments

Sign in to comment.

More Answers (1)

Farhad Sedaghati
Farhad Sedaghati on 17 Jul 2015
This following function helps you to put several fig files next to each other as subplots: http://www.mathworks.com/matlabcentral/fileexchange/51236-subplot It is important to note that all the saved fig file should be 2D and single plot (No subplots)

  0 Comments

Sign in to comment.

Sign in to answer this question.