1. 程式人生 > >python資料視覺化:matplotlib的簡單示例

python資料視覺化:matplotlib的簡單示例

官方API

超簡單示例(基本表格):

照常上最簡單直觀的程式碼:(demo1)

import matplotlib.pyplot as plt
dot=[3,4,2,1]
plt.plot(dot)
plt.ylabel('The name of the Y axis')        #可以忽略,只是用來標註表的資訊而已
plt.xlabel(' The name of the X axis')        #可以忽略
plt.title("The name of the image's Theme")    #可以忽略
plt.show()
plt.savefig('hehe.jpg')

輸出:

還有一張叫做“haha.jpg”的圖片會儲存到當前專案的資料夾中。

輸出多張表格 / 控制線條顏色與樣式:

如果想要實現同時輸出多張表格的可以參照下面的部落格:(demo2)

注意:以上面的部落格為例子,不要每次使用了“plt.sca(ax1)”選擇了一張表格,就用一次plt.show(),不要重複寫三次plt.show(),你會發現只有第一張表格被打印出來,後面的都不會被打印出來。我們只需要在最後使用plt.show()。

其實我們不一定要用線條的,下面這條語句obsX是x軸的變數,obsY是y軸的,輸出的是散點圖。

  plt.scatter(obsX, obsY, c='b', marker='.')  # b代表顏色blue,後面那個是樣式,也可以選擇'x'或者'o'

圖的種類(直方圖,餅狀圖,氣泡圖):

比如直方圖:(demo3)

import numpy as np
import matplotlib.pyplot as plt

zf=[1,2,3]
plt.hist(zf)
#plt.hist(np.random.normal(size=100), bins=30)
plt.show()

輸出:

其餘的種類別的博主已經講的很好了~:(demo4)

動態圖(實時變化的圖):

一開始是因為想要監聽數值輸出才來接觸“資料視覺化”的,但是發現使用plt.show()完全就是死的....圖中的資料不能跟著程式變化。有人說是因為

               python視覺化庫matplotlib有兩種顯示模式:

        阻塞(block)模式和互動(interactive)模式

        在Python Consol命令列中,預設是互動模式。而在python指令碼中,matplotlib預設是阻塞模式。

還好matplotlib是提供“互動”功能的。話不多說,上程式碼(非原創):

import numpy as np
import matplotlib.pyplot as plt

plt.axis([0, 100, 0, 1])
plt.ion()

for i in range(100):
    y = np.random.random()
    plt.scatter(i, y)
    plt.pause(0.1)

輸出自行體會~

待更....