python散點圖實例之隨機漫步
更新時間:2018年08月27日 15:21:22 作者:仲夏199603
這篇文章主要為大家詳細介紹了python散點圖實例之隨機漫步,具有一定的參考價值,感興趣的小伙伴們可以參考一下
隨機漫步是這樣行走得到的途徑:每次行走都是完全隨機的,沒有明確的方向,結(jié)果是由一系列隨機決策決定的。
random_walk.py
#random_walk.py from random import choice # -*- coding: utf-8 -*- class RandomWalk(): #一個生成隨機漫步數(shù)據(jù)的類 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() #設(shè)置繪圖窗口的尺寸 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
效果圖:
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python判斷素數(shù)的3種方法及for-else語句的用法介紹
素數(shù)又叫質(zhì)數(shù),指的是>1的整數(shù)中,只能被1和這個數(shù)本身整除的數(shù),這篇文章主要給大家介紹了關(guān)于Python判斷素數(shù)的3種方法及for-else語句的用法介紹的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-05-05python文件操作的基礎(chǔ)詳細講解(write、read、readlines、readline)
使用python來讀寫文件是非常簡單的操作,下面這篇文章主要給大家介紹了關(guān)于python文件操作的基礎(chǔ)詳細資料,包括write、read、readlines、readline等相關(guān)操作,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2022-04-04