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 相关文章推荐
Django的信号机制详解
May 05 Python
Django 前后台的数据传递的方法
Aug 08 Python
基于python实现在excel中读取与生成随机数写入excel中
Jan 04 Python
Python中创建二维数组
Oct 17 Python
python实现求特征选择的信息增益
Dec 18 Python
详解python数据结构和算法
Apr 18 Python
python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法
Aug 27 Python
tensorflow 变长序列存储实例
Jan 20 Python
Python tkinter实现日期选择器
Feb 22 Python
python实现黄金分割法的示例代码
Apr 28 Python
Python自动化之批量处理工作簿和工作表
Jun 03 Python
浅谈Python响应式类库RxPy
Jun 14 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
通过文字传递创建的图形按钮
2006/10/09 PHP
实现 win2003 下 mysql 数据库每天自动备份
2006/12/06 PHP
php下安装配置fckeditor编辑器的方法
2011/03/02 PHP
深入Nginx + PHP 缓存详解
2013/07/11 PHP
用PHP代替JS玩转DOM的思路及示例代码
2014/06/15 PHP
PHP APP微信提现接口代码
2018/09/30 PHP
append和appendTo的区别以及appendChild用法
2013/12/24 Javascript
实例分析js和C#中使用正则表达式匹配a标签
2014/11/26 Javascript
node.js连接mongoDB数据库 快速搭建自己的web服务
2016/04/17 Javascript
easyui中combotree循环获取父节点至根节点并输出路径实现方法
2016/11/10 Javascript
JS基于面向对象实现的选项卡效果示例
2016/12/20 Javascript
使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android)
2017/01/04 Javascript
Vue获取DOM元素样式和样式更改示例
2017/03/07 Javascript
Javascript实现登录记住用户名和密码功能
2017/03/22 Javascript
微信小程序开发之选项卡(窗口底部TabBar)页面切换
2017/04/12 Javascript
jQuery 循环遍历改变a标签的href(实例讲解)
2017/07/12 jQuery
微信小程序文章详情页面实现代码
2018/09/10 Javascript
vue滚动tab跟随切换效果
2020/06/29 Javascript
vue-router路由模式详解(小结)
2019/08/26 Javascript
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
Python线性方程组求解运算示例
2018/01/17 Python
Python(Django)项目与Apache的管理交互的方法
2018/05/16 Python
简单了解python代码优化小技巧
2019/07/08 Python
Python如何调用外部系统命令
2019/08/07 Python
python烟花效果的代码实例
2020/02/25 Python
英国奢侈品网站:MatchesFashion
2016/12/16 全球购物
椰子猫砂:CatSpot
2018/08/27 全球购物
PatPat德国:妈妈的每日优惠
2019/10/02 全球购物
会计电算一体化个人简历的自我评价
2013/10/15 职场文书
如何掌握自荐信格式呢
2013/11/19 职场文书
奥巴马英文演讲稿
2014/05/15 职场文书
大学生社会服务心得体会
2016/01/22 职场文书
Python实现DBSCAN聚类算法并样例测试
2021/06/22 Python
vue实现书本翻页动画效果实例详解
2022/04/08 Vue.js
Win11怎么添加用户?Win11添加用户账户的方法
2022/07/15 数码科技
SpringBoot接入钉钉自定义机器人预警通知
2022/07/15 Java/Android