gpt4 book ai didi

Matlab 在不重新绘制的情况下更改绘图中的单个点

转载 作者:行者123 更新时间:2023-12-05 08:59:55 30 4
gpt4 key购买 nike

所以我在二维平面上绘制了 N 个点(N 可以非常大)。我正在编写一个脚本来显示算法的工作原理。所以我有循环。在 for 循环的每一步,我都想更改当前点的颜色(实际上可能只用这个点制作一个针状图)。

但是,在步骤结束时,我想删除当前点的颜色,以便我可以为下一个点着色。目前我必须重新绘制整个图(包括 2D 点)。我不确定 Matlab 是否在绘图命令中检测到此类内容,但有没有一种方法可以在不重绘整个绘图的情况下执行此操作?

例如:

plot(x,y, '*');


for j = 1:N-1
for i = j:N
hold on;
%Do stuff

plot(x,y, '*');
hold on;
stem(x(1), y(1), 'g*');
end

end

最佳答案

一个简单的例子:

%# plot some data
x = 1:100;
y = cumsum(rand(size(x))-0.5);
plot(x,y,'*-')

%# animate by going through each point
hold on
h = stem(x(1),y(1),'g');
hold off
for i=1:numel(x)
%# update the stem x/y data
set(h, 'XData',x(i), 'YData',y(i));

%# slow down a bit, drawnow was too fast!
pause(.1)
end

screenshot

关于Matlab 在不重新绘制的情况下更改绘图中的单个点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11165795/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com