Python随机游走轨迹模拟(带画图)

简介: Python随机游走轨迹模拟(带画图)

随机游走(Random Walk)又称随机游动或随机漫步,与很多自然、社会现象相关。在自然科学研究中,随机游走是扩散过程的基础,广泛地用于对物理和化学粒子扩散现象的模拟。在实际生活中,人们用随机游走描述花粉的布朗运动、证券的涨跌等。

对随机游走过程的理论研究和计算机模拟已成功地应用于数学、物理、化学和经济等学科,在互联网信息检索、图像分割等领域的应用也取得了很好的效果。本节将NumPy的随机数生成函数与ndarray结合,模拟物体在二维平面上随机游走的过程。

假设物体初始位置处在二维坐标系的(0,0)位置,每步随机地沿着工轴方左移或右移一个单位,同时沿着y轴方左移或右移一个单位,左移或右移的概率是相等的。


import numpy as np
np.set_printoptions( precision = 4)   #只显示4位小数
#利用随机函数生成随机游走方向
rndwlk = np.random.randint(0, 2, size = (2,10))
rndwlk = np.where( rndwlk>0, 1, -1 )
print(rndwlk)

#计算每步后坐标
position = rndwlk.cumsum(axis = 1)
print (position)


#计算每步离原点的距离
dists = np.sqrt(position[0]**2 + position[1]**2)
print(dists)


#为轨迹序列增加起始原点
x = np.append(0, position[0])
y = np.append(0, position[1])
#绘制图形
import matplotlib.pyplot as plt
plt.plot(x,y, c='g',marker='*')     #画折线图
plt.scatter(0,0,c='r',marker='o')   #画原点
plt.text(.1, -.1, 'origin')   #添加原点说明文字
plt.scatter(x[-1],y[-1], c='r', marker='o')  #单独画终点
plt.text(x[-1]+.1, y[-1]-.1, 'stop')   #添加终点说明文字
plt.title('Plotting: The trajectory of a random walk') #添加图题
plt.show()   #显示图

相关文章
|
6月前
|
算法 Python
关联规则算法及其画图(python
关联规则算法及其画图(python
71 2
|
6月前
|
数据可视化 API Python
画图实战-Python实现某产品全年销量数据多种样式可视化
画图实战-Python实现某产品全年销量数据多种样式可视化
88 0
|
2月前
|
Python
pyecharts:一款python画图神器
pyecharts:一款python画图神器
39 0
|
6月前
|
Python
python 海龟画图tutle螺旋线
python 海龟画图tutle螺旋线
151 0
|
6月前
|
存储 Python
【python】——超市管理系统和用turtle动态画图(爱心和魔幻曲线)
【python】——超市管理系统和用turtle动态画图(爱心和魔幻曲线)
【python】——超市管理系统和用turtle动态画图(爱心和魔幻曲线)
|
JSON 数据可视化 定位技术
可视化 | Python绘制高颜值台风地理轨迹图
可视化 | Python绘制高颜值台风地理轨迹图
|
算法 新能源 Python
多旋翼物流无人机节能轨迹规划(Python代码实现)
多旋翼物流无人机节能轨迹规划(Python代码实现)
206 0
|
6月前
|
Python
python画图中文乱码
python画图中文乱码
39 0
|
数据可视化 Python
【100天精通Python】Day69:Python可视化_实战:导航定位中预测轨迹和实际轨迹的3D动画,示例+代码
【100天精通Python】Day69:Python可视化_实战:导航定位中预测轨迹和实际轨迹的3D动画,示例+代码
232 1
|
数据处理 Python
技巧 | Python画图辅助标注(多子图共坐标轴)
技巧 | Python画图辅助标注(多子图共坐标轴)
技巧 | Python画图辅助标注(多子图共坐标轴)