在创建时最大化图形

4

我使用以下设置来最大化Matlab图形:

set(gcf,'units','normalized','outerposition',[0 0 1 1])

虽然它已经被最大化了,但仍然没有像标签中的最大化图标(如下图)一样完全最大化。这使得我在导出时丢失了部分图形。因此,我想知道如何将其完全最大化,就像手动按下图形的最大化按钮一样。
1个回答

5
你可以使用一些未记录的特性来实现你想要的:
drawnow
jFig = get(handle(gcf), 'JavaFrame'); 
jFig.setMaximized(true);

正如Yair Altman在其评论中提到的那样,drawnow并不明显,但是它是必不可少的,可以避免Java错误:

另一个可能的原因是EDT效应。最简单的解决方案是在访问JavaFrame功能(setMaximized或任何其他Java函数)之前调用drawnow; pause(0.1);

在Windows 8.1上使用Matlab R2015a进行测试。


太好了,我不知道这个。在我的Mac OSX 10.9.2上,Matlab R2014a也适用于我。 - Benoit_11
可以在Windows 7 64位上的Matlab R2015a中运行。 - Luis Mendo
为什么如果我使用fig1=figure('visible','off'),然后尝试使用export_fig保存图形,它不会被放大保存?但是如果我使用fig1=figure(),那么它就可以正确保存。 - Tak
我觉得在不最大化可视化(图形可见)的情况下,是不可能的,因为Java框架并不活动。但这对我来说是太多的Java了... - Robert Seifert

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接