假设在二维平面内一个点(初始位置设为(0,0))一次能随机的沿着东西南北的其中一个方向走一个单位,求100000次后以该点与原点的距离为y轴走的次数为x轴的图像,以下是我个人的代码:
import random
import matplotlib.pyplot as plt
import numpy as np
xl = [0]
y = [0]
for i in range(100000):
mydir = random.randint(1,4)
mystep = 1
if mydir == 1:
xl.append(xl[-1]+mystep)
if mydir == 2:
xl.append(xl[-1]-mystep)
if mydir == 3:
y.append(y[-1]+mystep)
xl.append(xl[-1]+(xl[-1]**2+y[-1]**2)**0.5)
if mydir == 4:
y.append(y[-1]-mystep)
xl.append(xl[-1]+(xl[-1]**2+y[-1]**2)**0.5)
xl=np.array(xl)
plt.plot(np.abs(xl))
plt.show()
plt.close()