使用 python 绘制 2D 步行图

Plotting a 2D walk using python

我正在尝试使用 python 创建一个非常基本的步行模拟。生成一个随机数,确定每一步的方向。我正在尝试创建一个列表,其中包含每个步骤的每个 y 和 x 坐标。像这样:[[0, 0], [1, 0], [0, 0], [0, -1], [-1, -1]]。但是,我无法将结果附加到列表中,无法进行绘图。

代码:

steps = 200

x_c = 0
y_c = 0

walk = [[x_c,y_c]]


for i in range(steps):
        direction = np.random.randint(1,5)
        
        if direction == 1:
            x_c += 1
        if direction == 2:
            x_c -= 1
        if direction == 3:
            y_c += 1
        if direction == 4:
            y_c -= 1
            
        walk = [[x_c,y_c]]

目前,上面的代码没有产生任何错误,但它只在图 (0,0) 上绘制了一个点,我想我知道问题出在哪里(列表只包含 0,0)但是我我不确定如何解决这个问题。 谢谢

您似乎一直在覆盖项目。

for 循环中的行 walk = [[x_c,y_c]] 只是不断将 walk 重置为 x_c,y_c 的当前值。

改为使用 walk.append([x_c,y_c])

steps = 200

x_c = 0
y_c = 0

walk = [[x_c,y_c]]


for i in range(steps):
        direction = np.random.randint(1,5)
        
        if direction == 1:
            x_c += 1
        if direction == 2:
            x_c -= 1
        if direction == 3:
            y_c += 1
        if direction == 4:
            y_c -= 1
            
        walk.append([x_c,y_c])