在Python中绘制3D随机游走

时间:2016-01-21 10:06:20

标签: python matplotlib random-walk

我想在Python中绘制三维随机游走。与下面给出的图片相似的东西。你能给我一个工具吗?我正在尝试使用matplotlib,但对如何做到这一点感到困惑 现在,我有一个lattice个零的数组,基本上是X*Y*Z维度,并保存随机漫步者走过的信息,在每个{{1}上将0转为1随机助行器已经踩到了。

如何创建步行的3D视觉效果? enter image description here

1 个答案:

答案 0 :(得分:7)

以下我认为您正在尝试做的事情:

import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import random

mpl.rcParams['legend.fontsize'] = 10

fig = plt.figure()
ax = fig.gca(projection='3d')

xyz = []
cur = [0, 0, 0]

for _ in xrange(20):
    axis = random.randrange(0, 3)
    cur[axis] += random.choice([-1, 1])
    xyz.append(cur[:])

x, y, z = zip(*xyz)
ax.plot(x, y, z, label='Random walk')
ax.scatter(x[-1], y[-1], z[-1], c='b', marker='o')   # End point
ax.legend()
plt.show()

这会让你随意走路看起来像这样:

random walk