如何控制同一个figure中两个画图句柄的图形同步更新?。
Show older comments
我在一个figure里,同时使用两个plot的句柄画图形,并用drawnow函数实现动画显示。
我希望两个句柄能够同时更新图形,而不要一前一后显示图形。
demo如下:
close all;
figure(1);
hold on;
grid on;
axis([0, 15, 0, 15]);
h1 = plot(NaN, NaN, 'Color', 'r');
h2 = plot(NaN, NaN, 'Color', 'b');
for i = 1:1:10
set(h1, 'XData', i, 'YData', i, 'Marker', 's');
pause(0.5); % 此处是为了说明这个问题而加的调试代码,实际代码是由于大量的运算导致在此处占用了太多时间
set(h2, 'XData', i, 'YData', i + 1, 'Marker', 's');
drawnow;
pause(0.1);
end
如上代码所示,我希望h1和h2的图形,都在drawnow处才更新。
但实际在figure中看到的图形显示效果是,set h1数据时,h1的图形就更新了,因此h1的图形更新比h2快。但我希望他两同时更新。
代码中的pause(0.5)是为了说明这个问题而加的调试代码,实际代码此处是由于大量的运算导致在此处占用了太多时间
Accepted Answer
More Answers (0)
Categories
Find more on 图形性能 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!