Python實現隨機漫步

2022-03-17 03:44:22 字數 2461 閱讀 5988

隨機漫步生成是無規則的,是系統自行選擇的結果。根據設定的規則自定生成,上下左右的方位,每次所經過的方向路徑。

首先,建立乙個randomwalk()類和fill_walk()函式

random_walk.py

from random import

choice

class

randomwalk ():

'''乙個生成隨機數漫步的類

'''def

__init__(self,num_point=5000):

'''初始化隨機漫步的屬性

'''self.num_point =num_point

#所有隨機漫步的開始都是座標[0,0]

self.x_lab =[0]

self.y_lab =[0]

deffill_walk(self):

'''計算隨機漫步的所有點

'''while len(self.x_lab)

#決定前進方向以及前進的距離

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_lab[-1] +x_step

next_y = self.y_lab[-1] +y_step

2、繪製隨機漫步圖

rw_visual.py
import

matplotlib.pyplot as plt

from random_walk import

randomwalk

from random import

choice

rw =randomwalk()

rw.fill_walk()

plt.scatter(rw.x_lab,rw.y_lab,s=15)

plt.show()

3、生成效果

4、修改**-->隱藏邊框
rw_visual.py

import

matplotlib.pyplot as plt

from random_walk import

randomwalk

from random import

choice

while

true:

rw =randomwalk()

rw.fill_walk()

#設定繪畫視窗大小

plt.figure(dpi=128,figsize=(10,6))

point_numbers =list(range(rw.num_point))

#突出起點(0,0)和終點

plt.scatter(0,0,c='

green

',edgecolors='

none

',s=100)

plt.scatter(rw.x_lab[-1],rw.y_lab[-1],c='

red',edgecolors='

none

',s=100)

#隱藏座標軸

plt.axes().get_xaxis().set_visible(false)

plt.axes().get_yaxis().set_visible(false)

plt.scatter(rw.x_lab,rw.y_lab,c=point_numbers,cmap=plt.cm.blues,edgecolors='

none

',s=15)

plt.show()

keep_running = input("

make another walk?(y/n): ")

keep_running =keep_running.lower()

if keep_running == 'n'

:

break

5、展示效果

python隨機漫步 Python 隨機漫步

建立randomwalk 類 我們將使用python來生成隨機漫步資料,再使用matplotlib以引入矚目的方式將這些資料呈現出來 首先建立類randomwalk from random importchoiceclassrandomwalk 乙個生成隨機漫步資料的類 def init self,...

Python隨機漫步

隨機漫步,顧名思義,每一步都是隨機的,假設有乙個點,下一步往 走,往上?往下?往左還是右?走多遠?這些都沒有明確的表示,完全是隨機的,最後走到 是由一系列隨機決策決定的。這就是隨機漫步。那麼使用python怎麼樣模擬隨機漫步呢 首先我們需要建立乙個類,這個類需要具備三個屬性,1.隨機漫步多少次?2,...

numpy實現隨機漫步

隨機漫步是一種數學統計模型,它由一連串軌跡所組成,其中每一次都是隨機的,它能用來表示不規則的變動形式,如同乙個人亂步所形成的隨機記錄。在這裡用一種簡單的模式來實現,從0開始,步進為1或者 1,兩種步進的發生的概率相等。import random import matplotlib.pyplot as...