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中使用urllib2获取http请求状态码的代码例子
Jul 07 Python
python之wxPython应用实例
Sep 28 Python
Python2.x和3.x下maketrans与translate函数使用上的不同
Apr 13 Python
python实现web方式logview的方法
Aug 10 Python
Python中pygame的mouse鼠标事件用法实例
Nov 11 Python
对Python 内建函数和保留字详解
Oct 15 Python
python绘制散点图并标记序号的方法
Dec 11 Python
Python在图片中插入大量文字并且自动换行
Jan 02 Python
Python生成MD5值的两种方法实例分析
Apr 26 Python
python实现将中文日期转换为数字日期
Jul 14 Python
通过python-pptx模块操作ppt文件的方法
Dec 26 Python
使用numpy nonzero 找出非0元素
May 14 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基础知识:类与对象(1)
2006/12/13 PHP
php中目录,文件操作详谈
2007/03/19 PHP
用php或asp创建网页桌面快捷方式的代码
2010/03/23 PHP
php echo 输出字符串函数详解
2010/05/13 PHP
PHP扩展开发入门教程
2015/02/26 PHP
实例简介PHP的一些高级面向对象编程的特性
2015/11/27 PHP
分析php://output和php://stdout的区别
2018/05/06 PHP
关于JavaScript的gzip静态压缩方法
2007/01/05 Javascript
JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
2014/04/10 Javascript
如何正确使用Nodejs 的 c++ module 链接到 OpenSSL
2014/08/03 NodeJs
JavaScript的arguments对象应用示例
2014/09/15 Javascript
JS+Canvas绘制时钟效果
2020/08/20 Javascript
基于jQuery插件jqzoom实现的图片放大镜效果示例
2017/01/23 Javascript
js实现延迟加载的几种方法详解
2019/01/19 Javascript
微信小程序使用字体图标的方法
2019/05/23 Javascript
利用JavaScript将Excel转换为JSON示例代码
2019/06/14 Javascript
解决layui 三级联动下拉框更新时回显的问题
2019/09/03 Javascript
微信小程序实现菜单左右联动
2020/05/19 Javascript
如何搭建一个完整的Vue3.0+ts的项目步骤
2020/10/18 Javascript
Python自动化运维_文件内容差异对比分析
2017/12/13 Python
python numpy格式化打印的实例
2018/05/14 Python
python 3.7.0 下pillow安装方法
2018/08/27 Python
Django页面数据的缓存与使用的具体方法
2019/04/23 Python
Python 处理文件的几种方式
2019/08/23 Python
简单分析python的类变量、实例变量
2019/08/23 Python
pygame实现俄罗斯方块游戏(基础篇1)
2019/10/29 Python
keras 使用Lambda 快速新建层 添加多个参数操作
2020/06/10 Python
HTML5 的新的表单元素(datalist/keygen/output)使用介绍
2013/07/19 HTML / CSS
英国百安居装饰建材网上超市:B&Q
2016/09/13 全球购物
军训 自我鉴定
2014/02/03 职场文书
《地震中的父与子》教学反思
2014/04/10 职场文书
询价采购方案
2014/06/09 职场文书
优秀本科毕业生自荐信
2014/07/04 职场文书
数学教育专业求职信
2014/07/22 职场文书
2015年三好一满意工作总结
2015/07/24 职场文书
如何写好竞聘报告
2019/04/03 职场文书