Python3随机漫步生成数据并绘制


Posted in Python onAugust 27, 2018

本文为大家分享了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()

结果图:

Python3随机漫步生成数据并绘制

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python操作xml文件详细介绍
Jun 09 Python
Python使用xlrd模块操作Excel数据导入的方法
May 26 Python
Python中对象的引用与复制代码示例
Dec 04 Python
使用Python制作自动推送微信消息提醒的备忘录功能
Sep 06 Python
Python实现iOS自动化打包详解步骤
Oct 03 Python
解决PyCharm控制台输出乱码的问题
Jan 16 Python
Python如何处理大数据?3个技巧效率提升攻略(推荐)
Apr 15 Python
关于python中plt.hist参数的使用详解
Nov 28 Python
nginx搭建基于python的web环境的实现步骤
Jan 03 Python
Python实现GIF图倒放
Jul 16 Python
python 字典和列表嵌套用法详解
Jun 29 Python
Python爬虫入门案例之爬取去哪儿旅游景点攻略以及可视化分析
Oct 16 Python
python如何生成各种随机分布图
Aug 27 #Python
python随机数分布random测试
Aug 27 #Python
pycharm安装和首次使用教程
Aug 27 #Python
Windows下PyCharm安装图文教程
Aug 27 #Python
python 3.7.0 安装配置方法图文教程
Aug 27 #Python
python 3.7.0 下pillow安装方法
Aug 27 #Python
python3.7.0的安装步骤
Aug 27 #Python
You might like
木翼下载系统中说明的PHP安全配置方法
2007/06/16 PHP
PHP ajax 分页类代码
2008/11/13 PHP
PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
2011/05/29 PHP
php设计模式 Visitor 访问者模式
2011/06/28 PHP
PHP COOKIE及时生效的方法介绍
2014/02/14 PHP
在Windows系统下使用PHP生成Word文档的教程
2015/07/03 PHP
XmlUtils JS操作XML工具类
2009/10/01 Javascript
深入了解javascript中的prototype与继承
2013/04/14 Javascript
MultiSelect左右选择控件的设计与实现介绍
2013/06/08 Javascript
Ext JS添加子组件的误区探讨
2013/06/28 Javascript
在JavaScript里防止事件函数高频触发和高频调用的方法
2014/09/06 Javascript
JavaScript中判断两个字符串是否相等的方法
2015/07/07 Javascript
微信小程序 toast 详解及实例代码
2016/11/09 Javascript
原生JS查找元素的方法(推荐)
2016/11/22 Javascript
微信小程序 scroll-view隐藏滚动条详解
2017/01/16 Javascript
JS实现弹出下载对话框及常见文件类型的下载
2017/07/13 Javascript
Angularjs实现页面模板清除的方法
2018/07/20 Javascript
webpack之引入图片的实现及问题
2018/10/08 Javascript
vue router 源码概览案例分析
2018/10/09 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
关于Layui Table隐藏列问题
2019/09/16 Javascript
js实现自动播放匀速轮播图
2020/02/06 Javascript
python实现带声音的摩斯码翻译实现方法
2015/05/20 Python
Python网络编程中urllib2模块的用法总结
2016/07/12 Python
使用Python实现简单的服务器功能
2017/08/25 Python
对python中的乘法dot和对应分量相乘multiply详解
2018/11/14 Python
将数据集制作成VOC数据集格式的实例
2020/02/17 Python
Jupyter 无法下载文件夹如何实现曲线救国
2020/04/22 Python
Html5实现单张、多张图片上传功能
2019/04/28 HTML / CSS
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
机械制造专业大学生自我鉴定
2014/09/19 职场文书
毕业生就业推荐表导师评语
2014/12/31 职场文书
工程技术员岗位职责
2015/04/11 职场文书
大学生社会实践活动总结报告
2015/05/06 职场文书
2016教师读书思廉心得体会
2016/01/23 职场文书
2019年描写人生经典诗句大全
2019/07/08 职场文书