图中的函数未在运行时Matlab上更新

时间:2013-08-19 16:09:03

标签: matlab

我有一个函数E,它有一个for循环,在这个循环中我打开一个图像来使用imshow(im,'Colormap',jet)进行绘制然后调用另一个函数M,在fn {{1还有另一个循环,我正在使用M matlab函数在图像line上绘制点。问题是,如果我在没有从fn im调用的情况下运行fn M,这意味着只有E函数的一次迭代,那么这个数字会非常快速且实时地出现。但是如果我从fn E调用它,直到我退出时图像才显示,因为循环有大量的迭代,其中只绘制了一部分图像。我不知道如何制作图像显示实时显示每次迭代的更新?所以如果有人可以建议。这两个函数的代码非常大,这就是我无法发布的原因。

这是我的代码示例:

E

2 个答案:

答案 0 :(得分:2)

请勿使用pause,使用显式刷新图形队列的drawnow。如果您愿意,可以使用drawnow('expose'),这可能会更快,但是在快速循环中调整窗口大小等内容可能不起作用。

答案 1 :(得分:0)

你可以在for循环中暂停一小段时间来给出渲染时间。例如,在调用函数M后,在循环中使用pause(.1)。