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实现2种文件复制的方法
Jan 19 Python
python实现图片彩色转化为素描
Jan 15 Python
Python中文编码知识点
Feb 18 Python
在Python中,不用while和for循环遍历列表的实例
Feb 20 Python
python根据文章标题内容自动生成摘要的实例
Feb 21 Python
python 为什么说eval要慎用
Mar 26 Python
Linux下远程连接Jupyter+pyspark部署教程
Jun 21 Python
python中的列表与元组的使用
Aug 08 Python
用Python画小女孩放风筝的示例
Nov 23 Python
Python导入父文件夹中模块并读取当前文件夹内的资源
Nov 19 Python
Python如何telnet到网络设备
Feb 18 Python
python机器学习创建基于规则聊天机器人过程示例详解
Nov 02 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
ThinkPHP CURD方法之limit方法详解
2014/06/18 PHP
php遍历解析xml字符串的方法
2016/05/05 PHP
php 解析xml 的四种方法详细介绍
2016/10/26 PHP
google地图的路线实现代码
2009/08/20 Javascript
Jquery 获得服务器控件值的方法小结
2010/05/11 Javascript
js将字符串转成正则表达式的实现方法
2013/11/13 Javascript
javascript控制层显示或隐藏的方法
2015/07/22 Javascript
Bootstrap树形组件jqTree的简单封装
2016/01/25 Javascript
js阻止浏览器默认行为触发的通用方法(推荐)
2016/05/15 Javascript
javascript实现摄像头拍照预览
2019/09/30 Javascript
如何在vue 中使用柱状图 并自修改配置
2021/01/21 Vue.js
[02:09]DOTA2辉夜杯 EHOME夺冠举杯现场
2015/12/28 DOTA
[01:43]深扒TI7聊天轮盘语音出处4
2017/05/11 DOTA
[02:33]2018DOTA2亚洲邀请赛赛前采访——LGD
2018/04/04 DOTA
Django实现自定义404,500页面教程
2017/03/26 Python
用Pygal绘制直方图代码示例
2017/12/07 Python
Python 实现王者荣耀中的敏感词过滤示例
2019/01/21 Python
python TF-IDF算法实现文本关键词提取
2019/05/29 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
Python使用扩展库pywin32实现批量文档打印实例
2020/04/09 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
用python写爬虫简单吗
2020/07/28 Python
Python通过fnmatch模块实现文件名匹配
2020/09/30 Python
一款纯css3实现的tab选项卡的实列教程
2014/12/11 HTML / CSS
利用Storage Event实现页面间通信的示例代码
2018/07/26 HTML / CSS
机械电子工程专业推荐信范文
2013/11/20 职场文书
四下基层实施方案
2014/03/28 职场文书
技校毕业生自荐信
2014/06/03 职场文书
人力资源管理专业求职信
2014/07/23 职场文书
标准单位租车协议书
2014/09/23 职场文书
技术员岗位职责范本
2015/04/11 职场文书
2015年银行员工工作总结
2015/04/24 职场文书
辩论赛开场白大全(主持人+辩手)
2015/05/29 职场文书
毕业论文答辩演讲稿
2015/06/23 职场文书
小学同学聚会感言
2015/07/30 职场文书
Python函数式编程中itertools模块详解
2021/09/15 Python