将Matlab图保留在后台

时间:2013-01-22 11:07:23

标签: matlab matlab-figure

我使用优化算法为某个功能找到最佳形状。我让程序向我展示每次迭代时的当前数字,看看一切都在哪里。问题是,当程序工作时我不能做任何事情(并且程序需要5-10分钟才能完成),因为数字不断弹出,如果我正在写东西,例如,窗口焦点会改变matlab图。

当图形发生变化时,可以保持matlab图形不在顶部吗?例如,我使用双显示器设置,并将图形移动到第二个显示器。这个数字可以在不改变我工作的当前窗口的焦点的情况下改变吗?

1 个答案:

答案 0 :(得分:1)

不会使用OuterPosition做这个伎俩吗? 这是一个示例,应该将图形保持在屏幕的右上角三分之一:

scnsize = get(0,'ScreenSize'); % get screen size
fig1 = figure;
position = get(fig1,'Position')
outerpos = get(fig1,'OuterPosition')
borders = outerpos - position
edge = -borders(1)/2;
pos1 = [scnsize(3)/2 + edge,...
    scnsize(4) * (2/3),...
    scnsize(3)/2 - edge,...
    scnsize(4)/3];

通过更改其OuterPosition属性来重新定位数字:

 set(fig1,'OuterPosition',pos1) 

在进行某些处理时,还有this option禁用整个数字窗口....