Clear Filters
Clear Filters

How do I merge two figures into one?

6 views (last 30 days)
Janna Hinchliff
Janna Hinchliff on 13 Dec 2021
Answered: Johannes Hougaard on 13 Dec 2021
I have two separate figures plotted and I want to make them into a single figure. I don't just want two separate figures in the same figure window, I want the lines that are plotted in one figure to be transferred to the other, all on the same set of axes. Is it possible to do this after creating the figure? I'm including the figures I want to merge and an example of how it should look after (I don't have access to the code that does what I want it to do).
I want to merge this:
and this:
to get something like this:
Is there a way to do this?
  1 Comment
KSSV
KSSV on 13 Dec 2021
Red about findobj. From here get coordinates and plot on the other figure.

Sign in to comment.

Answers (1)

Johannes Hougaard
Johannes Hougaard on 13 Dec 2021
This code will do something like what you wish, but you'll have to adapt it to your own data
x_values = linspace(0,8*pi,1234);
fh = figure;
hold on
for ii = 1:3
plot(x_values,abs(sin(x_values)*rand*60));
end
gh = figure;
hold on
for ii = 1:4
plot(x_values,abs(cos(x_values)*rand*60));
end
lh1 = findall(fh,'type','line');
lh2 = findall(gh,'type','line');
nf = figure;
axes;
copyobj(lh1,nf.CurrentAxes);
copyobj(lh2,nf.CurrentAxes);

Tags

Community Treasure Hunt

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

Start Hunting!