【发布时间】:2018-10-24 17:06:57
【问题描述】:
我正在创建一个包含多个子图的图形并将其保存到一个文件中。像这样:
fig = figure;
ax1 = subplot(2, 1, 1);
ax2 = subplot(2, 1, 2);
ylabel(ax1, 'First');
ylabel(ax2, 'Second');
savefig('myfigure.fig')
稍后,我想将其中一个子图复制到新图窗,而无需重新运行创建图窗的代码。我目前的做法是加载保存的图形,通过 YLabel 定位我要复制的轴,然后将其复制到新图形:
newfig = figure;
oldfig = openfig('myfigure.fig');
ylabel_obj = findobj(oldfig, 'String', 'First'); % This is not givng me what I expect
old_axes_obj = ylabel_obj.Parent;
new_axes_obj = copyobj(old_axes_obj, newfig);
问题是上面的findobj 没有找到YLabel。它只返回一个 0x0 空的 GraphicsPlaceholder 数组。为什么findobj 找不到我的 YLabel?有没有更好的方法来找到我想要的坐标轴?
【问题讨论】:
标签: matlab