2014-02-08 54 views
1

我已经使用的DrawNow绘制MNIST数据集的字符..,其输出如下输出如何强制drawnow Matlab GUI在新窗口中绘制?

enter image description here

当我创建用MATLAB GUI和调用的DrawNow加载它之后显示图像绘制在该图打开窗户让下面的输出

enter image description here

我的问题是如何迫使它在新窗口中绘制?

+0

@Rasoolll谢谢你的编辑,现在好多了:) –

+0

艾哈迈德,我的回答有帮助吗? –

+0

谢谢你的回答,它帮助我理解了实际​​上做了什么,在我的情况下,我停止了大约3天的项目工作,当我再次返回工作时,应用您的解决方案之前,该问题消失:) –

回答

2

drawnow只要求Matlab刷新事件队列并更新数字窗口;它并不决定如何以及在哪里绘制事物。很难说,因为你不包含任何代码,但在你的情况下,它看起来像你只是将字符图像和GUI元素绘制到同一个图中。

您可以通过设置“当前图形”来控制图形操作引用哪个图形窗口,该图形的句柄始终包含在变量gcf(图形:当前图形)中。

您生成一个新的人物,并使其成为当前调用

figure 

如果你想稍后再作这个数字现在,你需要保存它的手柄:

fa = figure; 

你那么做具有给定手柄电流的数字再次通过

figure(fa) 

可能程序的一些粗略草图:

% generate figure windows 
fa = figure; 
fb = figure; 

% plot something in figure a and make the screen update 
figure(fa) 
plot(...) 
drawnow 

% put a UI element into figure b and make the screen update 
figure(fb) 
uicontrol(...) 
drawnow