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的Django框架中消息通知的计数器实现教程
Jun 13 Python
用python与文件进行交互的方法
Mar 01 Python
python版本单链表实现代码
Sep 28 Python
django用户登录验证的完整示例代码
Jul 21 Python
python-Web-flask-视图内容和模板知识点西宁街
Aug 23 Python
opencv-python 读取图像并转换颜色空间实例
Dec 09 Python
django执行原始查询sql,并返回Dict字典例子
Apr 01 Python
jenkins+python自动化测试持续集成教程
May 12 Python
pandas DataFrame运算的实现
Jun 14 Python
Python描述数据结构学习之哈夫曼树篇
Sep 07 Python
Python Django ORM连表正反操作技巧
Jun 13 Python
使用scrapy实现增量式爬取方式
Jun 21 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
模板引擎Smarty深入浅出介绍
2006/12/06 PHP
本地机apache配置基于域名的虚拟主机详解
2013/08/10 PHP
PHP结合jQuery实现找回密码
2015/07/22 PHP
PHP的运行机制与原理(底层)
2015/11/16 PHP
PHP的mysqli_thread_id()函数讲解
2019/01/24 PHP
jquery 常用操作整理 基础入门篇
2009/10/14 Javascript
JavaScript的parseInt 取整使用
2011/05/09 Javascript
Jquery上传插件 uploadify v3.1使用说明
2012/06/18 Javascript
JS实现图文并茂的tab选项卡效果示例【附demo源码下载】
2016/09/21 Javascript
用iframe实现不刷新整个页面上传图片的实例
2016/11/18 Javascript
jquery仿微信聊天界面
2017/05/06 jQuery
js canvas实现放大镜查看图片功能
2017/06/08 Javascript
详解基于Node.js的微信JS-SDK后端接口实现代码
2017/07/15 Javascript
Angularjs实现上传图片预览功能
2017/09/01 Javascript
详解webpack编译多页面vue项目的配置问题
2017/12/11 Javascript
JS 中可以提升幸福度的小技巧(可以识别更多另类写法)
2018/07/28 Javascript
小程序实现留言板
2018/11/02 Javascript
ES6 Promise对象的应用实例分析
2019/06/27 Javascript
React-redux实现小案例(todolist)的过程
2019/09/29 Javascript
[04:26]DOTA2上海特锦赛小组赛第二日 TOP10精彩集锦
2016/02/27 DOTA
Python中subprocess的简单使用示例
2015/07/28 Python
Python+Selenium自动化实现分页(pagination)处理
2017/03/31 Python
Python实现抓取网页生成Excel文件的方法示例
2017/08/05 Python
在python中bool函数的取值方法
2018/11/01 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
2018/12/02 Python
python的常用模块之collections模块详解
2018/12/06 Python
python打印异常信息的两种实现方式
2019/12/24 Python
python 获取当前目录下的文件目录和文件名实例代码详解
2020/03/10 Python
记一次django内存异常排查及解决方法
2020/08/07 Python
Python爬虫分析微博热搜关键词的实现代码
2021/02/22 Python
英国手机零售商:Metrofone
2019/03/18 全球购物
语文教育专业应届生求职信
2013/11/23 职场文书
数控机械专业个人的自我评价
2014/01/02 职场文书
《永远的白衣战士》教学反思
2014/04/25 职场文书
办公室主任岗位职责
2015/01/31 职场文书
商业计划书格式、范文
2019/03/21 职场文书