0

我正在使用 for 循环来绘制以特定方式移动的粒子的“轨迹”。当我尝试在 for 循环内绘制线条时,我只会得到点。

这是我的代码:

a = [0];
b = [0];

for k = 1:10
    r = randn(1,2);
    a = a+r(1);
    b = b+r(2);
    k = k+1;

    plot(a,b,'-r')
    pause(1)
end

我已经在 stackoverflow 上阅读了有关此问题的其他问题,但这些答案对我不起作用。

4

1 回答 1

1

你这里有一些错误。首先,这个:

for k = 1:10           <--------
    r = randn(1,2);
    a = a+r(1);
    b = b+r(2);
    k = k+1;           <--------

    plot(a,b,'-r')
    pause(1)
end

for语句将已经递增k。无需手动进行。

其次,您基本上想要创建数组a然后b绘制它们:

a = [0];
b = [0];
for k = 1:10
    r = randn(1,2);
    a = [a[1:end], a[end] + r(1)];
    b = [b[1:end], b[end] + r(2)];

end
plot(a,b,'-r')

这应该绘制您的随机数组。

于 2013-09-28T19:24:44.140 回答