Python: 進階系列之三:Matplotlib的使用

簡介

Matplotlib 可能是 Python 2D-繪圖領域使用最廣泛的套件。它能讓使用者很輕鬆地將數據圖形化,並且提供多樣化的輸出格式。這裏將會探索 matplotlib 的常見用法。

折線圖

import matplotlib.pyplot as plt # 第一步:導入此模塊
x_values = [1,2,3,4] # x軸座標上的4個值
y_values = [1,2,3,4] # y軸座標上的4個值
plt.plot(x_values,y_values, linewidth =1) #linewidth 表示線條的寬度

圖案上的內容有點空,我們加一些其它說明

import matplotlib.pyplot as plt # 第一步:導入此模塊
x_values = [1,2,3,4] # x軸座標上的4個值
y_values = [x**2 for x in x_values] # y軸座標上的4個值,即y = x的平方
plt.plot(x_values,y_values, linewidth =10,c ='red') #linewidth 表示線條的寬度,c表示線條的顏色
plt.title('This is cong demo',fontsize = 24) # 指定標題,並設置標題字體大小
plt.xlabel('This is x axis', fontsize =12) #指定X座標軸的標籤,並設置標籤字體大小
plt.ylabel('This is y axis', fontsize =12) #指定Y座標軸的標籤,並設置標籤字體大小
plt.tick_params(axis='both', labelsize=10)  # 參數axis值爲both,代表要設置橫縱的刻度標記,標記大小爲14
plt.show()  # 打開matplotlib查看器,並顯示繪製的圖形

 

散點圖

 

import matplotlib.pyplot as plt
import numpy as np

x_values = np.arange(-10,11,1)
y_values = x_values ** 2 #一條拋物線
plt.scatter(x_values,y_values,s =40 ,c='green',edgecolor ='red') # s表示點的大小,c表示點的顏色,edgecolor表示點邊緣的顏色

使用顏色映射

import matplotlib.pyplot as plt
import numpy as np

x_values = np.arange(-10,11,1)
y_values = x_values ** 2 #一條拋物線
plt.scatter(x_values,y_values,s =40 ,c=x_values,cmap = plt.cm.Blues) # c是一個數組,共21條記錄,表示從淺藍到深藍的一過程

 

使用RGB來表示

import matplotlib.pyplot as plt
import numpy as np

x_values = np.arange(-10,11,1)
y_values = x_values ** 2 #一條拋物線
# 通過參數c修改數據點的顏色,至於顏色值可以採用直接寫顏色英文如'red'、'black'等,或者使用RGB顏色模式自定義顏色,這個自定義顏色設置爲一個元組,其中包含三個0~1之間的小數值,它們分別表示紅色、綠色和藍色分量,
plt.scatter(x_values,y_values,s =40 ,c=(0,0.8,0))  

 

柱狀圖

 

import matplotlib.pyplot as plt
import numpy as np

x_values = [1,2,3,4]
y_values = [1,2,3,4]

plt.bar(x_values,y_values,facecolor='r')

 餅圖

import matplotlib.pyplot as plt
import numpy as np

x_values = [1,2,3,4]
plt.pie(x_values)  


多重網格(subplot)

matplotlib下, 一個 Figure 對象可以包含多個子圖(Axes), 可以使用 subplot() 快速繪製, 其調用形式如下 :

subplot(numRows, numCols, plotNum)

 

待續。。。。。寫得深度不夠。。。。

 

參考鏈接

https://liam.page/2014/09/11/matplotlib-tutorial-zh-cn/

https://matplotlib.org/users/pyplot_tutorial.html#controlling-line-properties

https://morvanzhou.github.io/tutorials/data-manipulation/plt/1-1-why/

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章