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在Win7下的安装及创建项目hello word简明教程
Jul 14 Python
python连接远程ftp服务器并列出目录下文件的方法
Apr 01 Python
python利用装饰器进行运算的实例分析
Aug 04 Python
python实现JAVA源代码从ANSI到UTF-8的批量转换方法
Aug 10 Python
python3+PyQt5实现支持多线程的页面索引器应用程序
Apr 20 Python
django 实现celery动态设置周期任务执行时间
Nov 19 Python
python实现滑雪游戏
Feb 22 Python
在PyCharm中遇到pip安装 失败问题及解决方案(pip失效时的解决方案)
Mar 10 Python
超全Python图像处理讲解(多模块实现)
Apr 13 Python
Python 发送邮件方法总结
Aug 10 Python
Python 远程开关机的方法
Nov 18 Python
两行代码解决Jupyter Notebook中文不能显示的问题
Apr 24 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
php5 non-thread-safe和thread-safe这两个版本的区别分析
2010/03/13 PHP
基于PHP CURL用法的深入分析
2013/06/09 PHP
迅速确定php多维数组的深度的方法
2014/01/07 PHP
Apache PHP MySql安装配置图文教程
2016/08/27 PHP
php 调用ffmpeg获取视频信息的简单实现
2017/04/03 PHP
让回调函数 showResponse 也带上参数的代码
2007/08/13 Javascript
js 获取服务器控件值的代码
2010/03/05 Javascript
js和C# 时间日期格式转换的简单实例
2016/05/28 Javascript
Angular.Js中ng-include指令的使用与实现
2017/05/07 Javascript
bootstrap confirmation按钮提示组件使用详解
2017/08/22 Javascript
JavaScrip数组删除特定元素的几种方法总结
2017/09/06 Javascript
利用Javascript获取选择文本所在的句子详解
2017/12/03 Javascript
利用node实现一个批量重命名文件的函数
2017/12/21 Javascript
nodejs实现解析xml字符串为对象的方法示例
2018/03/14 NodeJs
最后说说Vue2 SSR 的 Cookies 问题
2018/05/25 Javascript
如何为vuex实现带参数的 getter和state.commit
2019/01/04 Javascript
Vue动态面包屑功能的实现方法
2019/07/01 Javascript
Vue实现腾讯云点播视频上传功能的实现代码
2020/08/17 Javascript
[01:19:34]2014 DOTA2国际邀请赛中国区预选赛 New Element VS Dream time
2014/05/22 DOTA
[33:23]Secret vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
使用 Python 获取 Linux 系统信息的代码
2014/07/13 Python
python使用正则表达式(Regular Expression)方法超详细
2019/12/30 Python
Pycharm中配置远程Docker运行环境的教程图解
2020/06/11 Python
[原创]赚疯了!转手立赚800+?大佬的python「抢茅台脚本」使用教程
2021/01/12 Python
贝玲妃美国官方网站:Benefit美国
2016/08/28 全球购物
购买一个高级域名:BuyDomains
2018/03/11 全球购物
大学生简短的自我评价分享
2014/02/20 职场文书
廉洁自律演讲稿
2014/05/22 职场文书
飞机制造技术专业求职信
2014/07/27 职场文书
对外汉语专业大学生职业生涯规划范文
2014/09/13 职场文书
客服专员岗位职责
2015/02/10 职场文书
污染环境建议书
2015/09/14 职场文书
Golang 实现获取当前函数名称和文件行号等操作
2021/05/08 Golang
把77A收信机改造成收音机
2022/04/05 无线电
Java虚拟机内存结构及编码实战分享
2022/04/07 Java/Android
Golang 实现WebSockets
2022/04/24 Golang