python之随机漫步数据
首先我们创造一个名为RandomWalk的类,它需要三个属性
一是储存随机漫步次数的变量,其他俩个是储存漫经过的x和y
我们使用的是choice()来选择
这里我们默认 的点数为5000,足够生成一个奇妙的图形
每次漫步从(0,0)出发
from random import choiceclass RandomWalk():"""随机生成漫步数据的类"""def __init__(self, num_points=5000):"""初始化随机漫步的属性"""self.num_points = num_points# 所有随机漫步始于(0,0)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_distance * x_directiony_direction = choice([1, -1])y_distance = choice([0, 1, 2, 3, 4])y_step = y_distance * y_direction# 拒绝原地踏步if x_step == 0 and y_step == 0:continue# 计算下一个点的x和ynext_x = self.x_values[-1] + x_stepnext_y = self.y_values[-1] + y_stepself.x_values.append(next_x)self.y_values.append(next_y)
在fill_walk()我们做了一个循环,直到漫步包含所需数量的点。
使用choice()进行选择上下左右的随机挑选
最后设置了不能原地踏步,拒绝这样的情况,接着执行下一次循环。、
绘制随机漫步图
我们要导入pyplot和RandomWalk类,然后创建RandomWalk实例储存到rw中,在调用fill_walk()
import matplotlib.pyplot as plt
from random_walk import RandomWalkwhile True:rw = RandomWalk(50000)rw.fill_walk()# 设置绘制窗口的尺寸plt.figure(dpi=100, 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, edgecolors='none', s=1)# 突出起点,终点plt.scatter(0, 0, c='green', edgecolors='none', s=10)plt.scatter(rw.x_values[-1], rw.y_values[-1], c='red', edgecolors='none', s=10)# 隐藏坐标轴plt.axis('off')plt.show()keep_running = input("Make another walk? (y/n):")if keep_running == 'n':break
plt.axis()可以修改坐标轴,隐藏起来
函数figure()用于指定图标的宽度,高度,分辨率和背景色,指定一个元组指出尺寸为英寸
形参dpi则是传递分辨率
plt.figure(dpi=100, figsize=(10, 6))
python之随机漫步数据相关推荐
- 【Python】随机漫步
欢迎来到博主 Apeiron 的博客,祝您旅程愉快 !时止则止,时行则行.动静不失其时,其道光明. 目录 1.缘起 2.创建 RandomWalk 类 3.随机选择方向 4.绘制随机漫步图 5.总结 ...
- Python模拟随机漫步
本文用Python模拟随机漫步行为. 1 使用内建的的random模块 import randomposition = 0 walk = [position] steps = 1000 for i i ...
- 手把手讲解python在随机漫步理论的应用
随机漫步理论–python手把手讲解 随机漫步理论是由Karl Pearson 于1905年提出的,它是一种变化形式,在运动过程中每一步都是随机,没有明确的方向.这个在自然界.物理学.生物学.化学和经 ...
- 使用python实现随机正态分布数据,并导出到表格(超详细)
文章目录 一.前言 二.使用步骤 1.引入库 2.随机正态分布生成算法 2.1.利用np.random.normal函数生成二维数据 2.2.利用for循环生成100*100数据 3.生成分布图 4. ...
- python mongodb 随机抽取数据
import sys import importlib importlib.reload(sys)#需要xlwt库的支持 from xlwt import * #指定file以utf-8的格式打开 f ...
- Python 生成随机经纬度数据
Python 生成随机经纬度 Description: python 自动生成经纬度, 该脚本适用于python3, 如果是python2请把# from __future__ import divi ...
- python怎么随机生成数据_Python-随机生成数据
from random importchoice,randintimportstringimportcodecsimportrandomimportopenpyxlimporttimefrom ope ...
- 【Python】随机划分数据集并生成VOC格式列表
1.Introduction 做目标检测时,用LabelImg生成的 xml 文件需要和对应的图片文件名,生成VOC格式列表.同时需要按照一定比例划分为训练集.验证集和测试集. 2.Materials ...
- 【Matplotlib】【Python】如何使用matplotlib绘制绘制随机生成的点--随机漫步详解
目录 1.绘制随机漫步 2.模拟多次随机漫步 3.给点着色 4.重新绘制起点和终点 5.隐藏坐标轴 随机漫步是指每次行走都完全是随机的,没有明确的方向,结果是由一系列随机决策决定的. 为模拟随机漫步, ...
- python随机画散点图-python散点图实例之随机漫步
随机漫步是这样行走得到的途径:每次行走都是完全随机的,没有明确的方向,结果是由一系列随机决策决定的. random_walk.py #random_walk.py from random import ...
最新文章
- RecycleView的notifyItemRemoved使用注意
- 换人!这些算法都不会还搞什么操作系统
- 计算机网络(第七版)谢希仁编著 第一章习题详解1-28
- 慕课学习--DNS的作用
- 面向对象程序设计上机练习五(类和对象)
- Android Studio实现一个校园二手交易系统
- [渝粤教育] 西南科技大学 电气CAD 在线考试复习资料
- matlab 三角函数积分,正弦函数与三角函数积分及Matlab编程.doc
- EyouCms1.0前台GetShell漏洞复现
- php 上传文件大小设置,调整PHP上传文件大小限制
- Vin码车架号识别技术已经很成熟了
- 模拟人生5显示与服务器,模拟人生5之人生无限
- utc时间 单位换算_UTC时间和GMT时间 | 圈里圈外
- Couch-to-5K 跑步计划
- C++程序避免触发 Win7下的程序兼容助手
- 国外著名大学计算机教学考察随笔
- 又一位程序员要去IPO敲钟:40岁,知乎老板做出200亿
- 调试winddows程序(windbg 和 Debug Diagnostic Tool)
- GPS接收机(四)--基于STM32和GU620的GPS接收机搭建
- 基于stm32的视觉和蓝牙控制F407芯片智能机械臂控制小车
热门文章
- 浮点运算方法和浮点运算器
- java判断英文符号_Java判断中英文符号、标点的实现
- Win系统 - 电脑一直停在正在关机的界面怎么办?
- 中国大学慕课python测验八答案_中国大学慕课Python编程基础章节测验答案
- JavaScript教程-18-JavaScript中的内置对象Global
- 力扣刷题 DAY_69 回溯
- FPGA学习-PS2接口
- 以下关于python缩进的描述_以下关于Python缩进的描述中,错误的是
- 为什么总是感觉压力很大?应该怎么办?
- 无法使用内置管理器打开计算机,win10系统无法使用内置管理员账户打开计算器的解决方法...