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获取标准北京时间的方法
Mar 24 Python
Python os模块学习笔记
Jun 21 Python
Python网站验证码识别
Jan 25 Python
python中的break、continue、exit()、pass全面解析
Aug 05 Python
numpy中实现ndarray数组返回符合特定条件的索引方法
Apr 17 Python
python实现简单加密解密机制
Mar 19 Python
详解Python图像处理库Pillow常用使用方法
Sep 02 Python
Python搭建代理IP池实现检测IP的方法
Oct 27 Python
python实现数据清洗(缺失值与异常值处理)
Dec 02 Python
解决Tensorboard 不显示计算图graph的问题
Feb 15 Python
python实现PDF中表格转化为Excel的方法
Jun 16 Python
Django框架实现在线考试系统的示例代码
Nov 30 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实现过滤表单提交中html标签的方法
2014/10/17 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
jQuery 性能优化指南(3)
2009/05/21 Javascript
jquery移动节点实例
2015/01/14 Javascript
JavaScript通过setTimeout实时显示当前时间的方法
2015/04/16 Javascript
jQuery插件实现无缝滚动特效
2015/11/24 Javascript
浅析jQuery 遍历函数,javascript中的each遍历
2016/05/25 Javascript
Bootstrap开发实战之第一次接触Bootstrap
2016/06/02 Javascript
jQuery动态加载css文件实现方法
2016/06/15 Javascript
php register_shutdown_function函数详解
2017/07/23 Javascript
React Native实现地址挑选器功能
2017/10/24 Javascript
Babel 入门教程学习笔记
2018/06/13 Javascript
三种Webpack打包方式(小结)
2018/09/19 Javascript
Vue源码探究之虚拟节点的实现
2019/04/17 Javascript
JS addEventListener()和attachEvent()方法实现注册事件
2021/01/11 Javascript
[24:42]VP vs TNC Supermajor小组赛B组 BO3 第三场 6.2
2018/06/03 DOTA
[01:01]2020完美高校联赛(秋)西安落幕
2021/03/11 DOTA
[46:49]完美世界DOTA2联赛PWL S3 access vs Rebirth 第二场 12.19
2020/12/24 DOTA
ssh批量登录并执行命令的python实现代码
2012/05/25 Python
Python实现抓取页面上链接的简单爬虫分享
2015/01/21 Python
如何利用python制作时间戳转换工具详解
2018/09/12 Python
PyQt弹出式对话框的常用方法及标准按钮类型
2019/02/27 Python
在PyTorch中Tensor的查找和筛选例子
2019/08/18 Python
Python loguru日志库之高效输出控制台日志和日志记录
2020/03/07 Python
详解background属性的8个属性值(面试题)
2020/11/02 HTML / CSS
欧洲第一中国智能手机和平板电脑网上商店:CECT-SHOP
2018/01/08 全球购物
施华洛世奇美国官网:SWAROVSKI美国
2018/02/08 全球购物
年会活动策划方案
2014/01/23 职场文书
信息技术教学反思
2014/02/12 职场文书
2015年乡镇科普工作总结
2015/05/13 职场文书
忠诚与背叛观后感
2015/06/04 职场文书
大学生入党自传2015
2015/06/26 职场文书
解析:创业计划书和商业计划书二者之间到底有什么区别
2019/08/14 职场文书
mysql timestamp比较查询遇到的坑及解决
2021/11/27 MySQL
教你部署vue项目到docker
2022/04/05 Vue.js
使用Python开发冰球小游戏
2022/04/30 Python