我有一些带有一些轴的Gui。 现在我将把一个轴放到一个新的数字上。 这是我的代码:
h = handles.axes3; % Find the axes object in the GUI
f1 = figure % Open a new figure with handle f1
s = copyobj(h,f1); % Copy axes object h into figure f1
print(f1,'-dpsc', 'raspberry.eps');
这样可行,但窗口的大小与图中的大小不同。 我认为GUI中的轴不在新图中的axes1上?
答案 0 :(得分:1)
您复制了轴,而不是图。
创建一个新的图形将创建一个默认大小 - 它的大小与handle.axes3的祖先(图)大小不同。
请参阅以下示例:
f = figure ( 'position', [100 100 200 200] );
h = axes ( 'position', [0 0 0.5 0.5], 'parent', f );
% This will create a figure with a different size
f1 = figure ( 'Name', 'Different Size Fig' );
copyobj ( h, f1 );
% copy a figure which has the same size as the original
hFig = ancestor ( h, 'figure' );
originalFigPos = get ( hFig, 'position' );
f2 = figure ('Name', 'Same Size Fig' );
newFigPos = get ( f2, 'position' );
newFigPos(3:4) = originalFigPos(3:4);
set ( f2, 'position', newFigPos );
s = copyobj ( h, f2 );