如何降低动画线渲染时间-Matlab

如何降低动画线渲染时间-Matlab,matlab,Matlab,我有一个边界,我希望使用动画线散点图。如何控制/降低此操作的速度 脚本: clc; clear; I = imread('http://dreamicus.com/data/key/key-01.jpg'); I = rgb2gray(I); I=imcomplement(I); level = graythresh(I); BW = im2bw(I,level); BW_filled = imfill(BW,'holes'); boundaries = b

我有一个边界,我希望使用动画线散点图。如何控制/降低此操作的速度

脚本:

clc;
clear;       
I = imread('http://dreamicus.com/data/key/key-01.jpg');
I =   rgb2gray(I);
I=imcomplement(I);
level = graythresh(I);
BW = im2bw(I,level);     
BW_filled = imfill(BW,'holes');     
boundaries = bwboundaries(BW_filled);  
figure,imshow(I);     
b = boundaries{1}; 
plot(b(:,2),b(:,1),'b','LineWidth',2);

an = animatedline; 
x=b(:,2);
y=b(:,1);


for k = 1:numel(x)
  disp(k)
  addpoints(an, x(k), y(k))
  drawnow
  % Wait for 0.1 seconds
  pause(0.1)
end
可以使用对象指定使用addpoints添加新点的速率

或者,您可以使用在添加每个点后等待一定时间。但是,此选项不考虑addpoints执行所需的时间

for k = 1:numel(x)
    addpoints(an, x(k), y(k))

    % Wait for 0.1 seconds
    pause(0.1)
end

您是否检查了内置函数:更新脚本的可能副本,但渲染速度仍然非常快,为什么?您应该将周期更改为更大的数字,以便渲染速度较慢
for k = 1:numel(x)
    addpoints(an, x(k), y(k))

    % Wait for 0.1 seconds
    pause(0.1)
end