Matlab:将图形句柄放入子图中

时间:2014-04-07 18:15:24

标签: matlab parent children matlab-figure subplot

我有两个带有数字处理h1h2的数字。我想将它们用作单个图中的子图并运行

figure
s1=subplot(211);
s2=subplot(212);
hc1=get(h1, 'children');
hcc1=get(hc1, 'children');
hc2=get(h2, 'children');
hcc2=get(hc2, 'children');
set(hcc1,'parent',s1);
set(hcc2,'parent',s2);

这适用于第一个数字,但不适用于第二个数字(h2),我得到错误

Error using set
Conversion to double from cell is not possible.

除了细节之外,这两个数字是相同的,所以我不明白为什么。我尝试使用set(hc2,'parent',s2);,即#34;少一个父母,"还有一个,即hccc2=get(hcc2, 'children'); set(hcc2,'parent',s2);,具有相同的错误。谁能看到发生了什么?

1 个答案:

答案 0 :(得分:3)

要获取特定类型的对象句柄,请尝试使用findobj查找特定的'Type'属性。例如,

ha1 = findobj(h1,'Type','axes');

但是,您可以只应用copyobj(而不是更改'parent'

copyobj(ha1,hf2)

这样您就可以将轴(ha1)复制到新图形(hf2)。您可以对任何图形元素执行相同操作,例如将绘图('Type' 'line')复制到新轴。