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 相关文章推荐
Win7上搭建Cocos2d-x 3.1.1开发环境
Jul 03 Python
基于python爬虫数据处理(详解)
Jun 10 Python
Python操作csv文件实例详解
Jul 31 Python
Django Admin实现三级联动的示例代码(省市区)
Jun 22 Python
对python同一个文件夹里面不同.py文件的交叉引用方法详解
Dec 15 Python
Django 权限认证(根据不同的用户,设置不同的显示和访问权限)
Jul 24 Python
python如何从文件读取数据及解析
Sep 19 Python
python requests.get带header
May 05 Python
Python基于BeautifulSoup爬取京东商品信息
Jun 01 Python
django 获取字段最大值,最新的记录操作
Aug 09 Python
详解向scrapy中的spider传递参数的几种方法(2种)
Sep 28 Python
python爬虫--selenium模块
Mar 31 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学习笔记 面向对象的构造与析构方法
2011/06/13 PHP
获取用户Ip地址通用方法与常见安全隐患(HTTP_X_FORWARDED_FOR)
2013/06/01 PHP
根据中文裁减字符串函数的php代码
2013/12/03 PHP
php中的四舍五入函数代码(floor函数、ceil函数、round与intval)
2014/07/14 PHP
destoon实现调用当前栏目分类及子分类和三级分类的方法
2014/08/21 PHP
php设计模式之单例模式实例分析
2015/02/25 PHP
php实现博客,论坛图片防盗链的方法
2016/10/15 PHP
php插件Xajax使用方法详解
2017/08/31 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
2018/04/27 PHP
Javascript的一种模块模式
2010/09/08 Javascript
js中更短的 Array 类型转换
2011/10/30 Javascript
javascript使用数组的push方法完成快速排序
2014/09/15 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
bootstrap 模态框(modal)实现水平垂直居中显示
2017/01/23 Javascript
JavaScript获取select中text值的方法
2017/02/13 Javascript
Bootstrap布局之栅格系统学习笔记
2017/05/04 Javascript
vue中使用cropperjs的方法
2018/03/01 Javascript
浅析vue.js数组的变异方法
2018/06/30 Javascript
微信小程序自定义导航栏(模板化)
2019/11/15 Javascript
jquery传参及获取方式(两种方式)
2020/02/13 jQuery
微信小程序实现列表左右滑动
2020/11/19 Javascript
Python最基本的数据类型以及对元组的介绍
2015/04/14 Python
python在非root权限下的安装方法
2018/01/23 Python
对python产生随机的二维数组实例详解
2018/12/13 Python
Python基于mysql实现学生管理系统
2019/02/21 Python
利用Python半自动化生成Nessus报告的方法
2019/03/19 Python
python简单区块链模拟详解
2019/07/03 Python
python程序 创建多线程过程详解
2019/09/23 Python
python/golang实现循环链表的示例代码
2020/09/14 Python
西班牙自行车和跑步商店:Alltricks
2018/07/07 全球购物
Mountain Warehouse德国官网:英国户外零售商
2019/08/11 全球购物
英国No.1体育用品零售商:SportsDirect.com
2019/10/16 全球购物
大学旷课检讨书
2014/01/28 职场文书
《与象共舞》教学反思
2014/02/24 职场文书
2015初一年级组工作总结
2015/07/24 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书