Python3实现随机漫步数据生成与可视化绘制
本文介绍如何利用Python3生成随机漫步数据并进行可视化绘制。通过RandomWalk类模拟步数、方向与距离,结合Matplotlib的scatter函数绘制路径,并高亮显示起点与终点。代码包含完整的数据生成逻辑与绘图参数设置,适用于Python初学者理解随机过程与数据可视化。
本文分享了基于Python3的随机漫步数据生成及绘制实现代码,供读者参考学习。
文件 random_walk.py
from random import choice
#生成随机漫步的数据类
class RandomWalk():
def __init__(self,num_points=5000): #初始化随机漫步的属性
self.numpoints=num_points #随机漫步的默认点数
self.x_values=[0] #所有的随机漫步都始于(0.0)
self.y_values=[0]
def fill_walk(self):
while len(self.x_values)<self.numpoints:
#决定前进方向及前进方向的距离
x_direction=choice([1,-1])
x_distance=choice([0,1,2,3,4])
x_step=x_direction*x_distance
y_direction=choice([1,-1])
y_distance=choice([0,1,2,3,4])
y_step=y_direction*y_distance
#拒绝原地踏步
if x_step==0 and y_step==0:
continue
#计算下一个点的x和y的值
next_x=self.x_values[-1]+x_step
next_y=self.y_values[-1]+y_step
self.x_values.append(next_x)
self.y_values.append(next_y)
文件 rw_visual.py
import matplotlib.pyplot as plt from random_walk import RandomWalk # 创建一个RandomWalk实例,并将其包含的点都绘制出来 rw = RandomWalk() rw.fill_walk() plt.scatter(rw.x_values, rw.y_values, s=15) #重新绘制起点和终点(突出起点和终点) plt.scatter(0,0,c='green',edgecolors='none',s=100) plt.scatter(rw.x_values[-1],rw.y_values[-1],c="red",edgecolors='none',s=100) #隐藏坐标轴 plt.axes().get_xaxis().set_visible(False) plt.axes().get_yaxis().set_visible(False) #设置窗口的屏幕分辨率和尺寸 plt.figure(dpi=128,figsize=(10,6)) plt.show()
运行结果截图如下:

以上内容为本文的全部介绍,希望能为读者的学习提供便利,欢迎继续支持本站。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













