python散点图实例之随机漫步


Posted in Python onAugust 27, 2018

随机漫步是这样行走得到的途径:每次行走都是完全随机的,没有明确的方向,结果是由一系列随机决策决定的。

random_walk.py

#random_walk.py
from random import choice
# -*- coding: utf-8 -*-
class RandomWalk():
  #一个生成随机漫步数据的类

  def __init__(self,num_points=5000):
   self.num_points=num_points
   self.x_values=[0]
   self.y_values=[0]

  def fill_walk(self):
   #计算随机漫步包含的所有点

   while len(self.x_values)<self.num_points:
    #决定前进方向以及沿这个方向前进的距离
    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.py

#rw.py
# coding=gbk
import matplotlib.pyplot as plt
from random_walk import RandomWalk


while True:
  rw=RandomWalk()
  rw.fill_walk()

  #设置绘图窗口的尺寸
  plt.figure(dpi=128,figsize=(10,6))

  point_numbers=list(range(rw.num_points))
  plt.scatter(rw.x_values,rw.y_values,c=point_numbers,cmap=plt.cm.Blues,s=15)

  #突出起点和终点
  plt.scatter(0,0,c='green',s=100)
  plt.scatter(rw.x_values[-1],rw.y_values[-1],c='red',s=100)

  #隐藏坐标轴
  plt.axes().get_xaxis().set_visible(False)
  plt.axes().get_yaxis().set_visible(False)

  plt.show()

  keep_running=input("Make another walk?(y/n):")
  if keep_running=='n':
   break

效果图:

python散点图实例之随机漫步

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

Python 相关文章推荐
Python 网络编程起步(Socket发送消息)
Sep 06 Python
Python yield 小结和实例
Apr 25 Python
python安装以及IDE的配置教程
Apr 29 Python
Python3 pip3 list 出现 DEPRECATION 警告的解决方法
Feb 16 Python
对python周期性定时器的示例详解
Feb 19 Python
python urllib爬虫模块使用解析
Sep 05 Python
mac使用python识别图形验证码功能
Jan 10 Python
Python利用Xpath选择器爬取京东网商品信息
Jun 01 Python
python中Mako库实例用法
Dec 31 Python
使用python实现学生信息管理系统
Feb 25 Python
Python页面加载的等待方式总结
Feb 28 Python
教你利用Selenium+python自动化来解决pip使用异常
May 20 Python
python3.5绘制随机漫步图
Aug 27 #Python
Python反射和内置方法重写操作详解
Aug 27 #Python
Python使用matplotlib绘制随机漫步图
Aug 27 #Python
Python面向对象之继承和组合用法实例分析
Aug 27 #Python
Python干货:分享Python绘制六种可视化图表
Aug 27 #Python
python使用matplotlib库生成随机漫步图
Aug 27 #Python
Python面向对象之接口、抽象类与多态详解
Aug 27 #Python
You might like
PHP session有效期问题
2009/04/26 PHP
PHP 存储文本换行实现方法
2010/01/05 PHP
如何阻止网站被恶意反向代理访问(防网站镜像)
2014/03/18 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
详解PHP的Yii框架中自带的前端资源包的使用
2016/03/31 PHP
php基于环形链表解决约瑟夫环问题示例
2017/11/07 PHP
jQuery帮助之CSS尺寸(五)outerHeight、outerWidth
2009/11/14 Javascript
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
JavaScript 拾碎[三] 使用className属性
2010/10/16 Javascript
jquery中prop()方法和attr()方法的区别浅析
2013/09/06 Javascript
使用正则表达式的格式化与高亮显示json字符串
2014/12/03 Javascript
JavaScript常用小技巧小结
2014/12/29 Javascript
JavaScript数据结构与算法之集合(Set)
2016/01/29 Javascript
深入浅析AngularJS和DataModel
2016/02/16 Javascript
Bootstrap每天必学之轮播(Carousel)插件
2016/04/25 Javascript
Bootstrap 布局组件(全)
2016/07/18 Javascript
bootstrap fileinput 插件使用项目总结(经验)
2017/02/22 Javascript
详解vue事件对象、冒泡、阻止默认行为
2017/03/20 Javascript
深入理解webpack process.env.NODE_ENV配置
2020/02/23 Javascript
[01:18]PWL开团时刻DAY10——一拳超人
2020/11/11 DOTA
win7 下搭建sublime的python开发环境的配置方法
2014/06/18 Python
Python爬取数据并写入MySQL数据库的实例
2018/06/21 Python
详解关于Django中ORM数据库迁移的配置
2018/10/08 Python
python连接mongodb集群方法详解
2020/02/13 Python
Python搭建Keras CNN模型破解网站验证码的实现
2020/04/07 Python
python中Django文件上传方法详解
2020/08/05 Python
简单介绍HTML5中的文件导入
2015/05/08 HTML / CSS
使用canvas压缩图片大小的方法示例
2019/08/02 HTML / CSS
大码女装:Ulla Popken
2019/08/06 全球购物
Arti-shopping中文官网:大型海外商品一站式直邮平台
2020/03/23 全球购物
法律系毕业生求职信
2014/05/28 职场文书
社区综治宣传月活动总结
2014/07/02 职场文书
院党委组织查摆问题对照检查材料思想汇报2014
2014/10/08 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
2016企业先进集体事迹材料
2016/02/25 职场文书
MySQL性能指标TPS+QPS+IOPS压测
2022/08/05 MySQL