MATLAB Answers

copyobj for combining multiple plots - Parent and child input vectors must be equal length

3 views (last 30 days)
Andreas
Andreas on 18 May 2020
Commented: Andreas on 18 May 2020
Hi everyone,
I am having trouble with merging / combining two sets of multiple plots I received from the simulation data inspector (see attached files).
My thought was using the following command:
L = findobj(1,'type','line');
copyobj(L,findobj(2,'type','axes'));
Unfortunately I get the following error:
Error using copyobj
Parent and child input vectors must be equal length.
Anyone any idea?

  0 Comments

Sign in to comment.

Accepted Answer

Mehmed Saad
Mehmed Saad on 18 May 2020
Edited: Mehmed Saad on 18 May 2020
Because figure 2 has multiple axes
findobj(2,'type','axes')
4×1 Axes array:
Axes
Axes
Axes
Axes
and you are assigning 7 line objects to 4 axes creating error
Simplest approach is use for loop
L = findobj(1,'type','axes');
M = findobj(2,'type','axes');
for i =1:length(M)
copyobj(findobj(L(i),'type','line'),M(i))
end

More Answers (0)

Products


Release

R2020a

Translated by