是否更新imshow()中的图像



我正试图随着时间的推移显示一个由函数转换的图像。我使用imshow()来显示我的图像。

如果我使用代码,

im = zeros(y,x);
for n=...
im = im + myFunction(...);
imshow(im)
end

然后,图像的每次迭代都被正确地显示。问题是显示的数字很小。如果我试图在脚本运行时调整图形,那么一旦达到for循环的下一次迭代,图像就会重置为其原始大小。

我希望能够调整显示器的大小,并在屏幕上保持我想要的大小和位置。

imshow()状态、的文档

"父轴"--图像对象的父轴
轴对象| UIAxes对象
图像对象的母轴,指定为逗号分隔的对,由"父"和一个轴对象或一个UI轴对象组成。使用"Parent"名称值参数来构建一个UI,该UI使您能够控制"Figure"one_answers"Axes"属性。

与此问题在线相关的其他问题指向使用一组轴。下面是我使用斧头的尝试。

figure
ha = axes('units','normalized','position',[0 0 1 1]);
im = zeros(y,x);
imshow(im, 'Parent', ha);
for n=...
im = im + myFunction(...);
imshow(im, 'Parent', ha);
end

此代码不起作用。由于某些原因,直到For循环完成后才会显示该图形。尽管最初的imshow调用在for循环开始之前。

如有任何帮助,我们将不胜感激。

假设图像的大小不随迭代而变化,一个选项是设置imshow返回的图形image对象的CData属性。

hIm = imshow(im, 'Parent', ha);

for n=...
im = im + myFunction(...);
hIm.CData = im;
drawnow limitrate
end

相关内容

  • 没有找到相关文章

最新更新