Python資料視覺化(1) 生成隨機漫步資料

2021-09-06 10:22:01 字數 2734 閱讀 9124

初次接觸python3的資料圖表操作,其實和matlab語法很相似,所以有一絲似曾相識的感覺。本篇主要是使用python的matplotlib庫來繪製隨機漫步圖。

① 要繪製隨機漫步圖,首先的有資料,所以我們使用random模組在random_walk.py中生成所需資料,具體**如下:

# random_walk.py

from random import choice

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([2

,-2]

) x_distance = choice([0

,1,2

,3,4

])x_step = x_direction*x_distance

y_direction = choice([2

,-2]

) y_distance = choice([0

,1,2

,3,4

])y_step = y_direction * y_distance

# 拒絕原地踏步

if x_step ==

0and y_step ==0:

continue

# 計算下乙個點的x和y值

next_x = self.x_values[-1

]+ x_step

next_y = self.y_values[-1

]+ y_step

② 第二步就是使資料視覺化,呼叫pyplot繪製圖形。具體**如下,在注釋中有函式用法解釋:

# rw_visual.py

import matplotlib.pyplot as plt

from random_walk import randomwalk

while

true

: rw = randomwalk(

50000

) rw.fill_walk(

)# 設定繪圖視窗的尺寸

plt.figure(dpi=

128, figsize=(10

,6))

point_numbers =

list

(range

(rw.num_points)

)# rw.x_values表示x軸資料, rw.y_values表示y軸資料, c=point_numbers表示繪製的點的顏色, cmap=plt.cm.blues表示顏色對映,表示 s表示繪製點的大小

plt.scatter(rw.x_values, rw.y_values, c=point_numbers, cmap=plt.cm.blues, s=1)

# 重點突出起點,edgecolors表示點的輪廓顏色,none表示去除輪廓顏色,在matplotlib 2.0.0版本中edgecolors預設為none

plt.scatter(0,

0, c=

'green'

, edgecolors=

'none'

, s=

100)

# 重點突出終點

plt.scatter(rw.x_values[-1

], rw.y_values[-1

], c=

'red'

, s=

100)

# 去除x軸和y軸

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

我介紹一下scatter中的顏色對映(colormap),顏色對映是一些列顏色,它從起始顏色漸變到結束顏色。

plt.scatter(rw.x_values, rw.y_values, c=point_numbers, cmap=plt.cm.blues, s=

1)

這裡將引數c設定為乙個y值列表,並用引數cmap告訴pyplot使用藍色來對映,y值較小則顏色淺,反之則顏色深。

python開發 資料視覺化(1)

簡介 python是一門解釋型 物件導向的高階程式語言.python是開源免費的 支援互動式,可跨平台移植的指令碼語言 誕生和發展 1991年,第乙個python編譯器 同時也是直譯器 誕生。它是用c語言實現的,並能夠呼叫c庫 so檔案 從 出生,python已經具有了 類,函式,異常處理,包含表和...

Python 資料視覺化

資料視覺化指的是通過視覺化表示來探索資料,它與資料探勘緊緊相關,而資料探勘指的是使用 來探索資料集的規律和關聯。資料集可以是用一行 就能表示的小型數字列表,也可以是數以吉位元組的資料。漂亮地呈現資料關乎的並非僅僅是漂亮的。以引人注目的簡潔方式呈現資料,讓人能夠明白其含義,發現資料集中原本未意識到的規...

Python資料視覺化總結

用python完成資料分析後,如何把結果呈現出來,比如畫乙個吸引人注意的圖表相當重要。當你探索乙個資料集,需要畫圖表,圖表看起來令人愉悅是件很高興的事。在給你的觀眾交流觀點,給領導匯報工作時,視覺化同樣重要,同時,也很有必要去讓圖表吸引注意力和印入腦海裡。在python中numpy,pandas,m...