matplotlib基礎教程--1

原文鏈接:matplotlib基礎教程–1

今天記錄一下python可視化工具:matplotlib.pyplot的基本使用方法。
使用之前首先
import matplotlib.pyplot as plt

測試數據

num1 = [0.37454, 0.44534,0.45488,0.44852,0.44577,0.44364,0.43286,0.42771,0.4192,0.41142,0.4076]
num2 = [0.43393, 0.4404,0.44896,0.44887,0.44153,0.43881,0.43673,0.43677,0.43528,0.43393,0.43164]
x=[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0]

添加子圖

一塊大的畫布可以分爲幾個小的畫布。

fig = plt.figure()
fig1 = fig.add_subplot(131)

上面的代碼將一個大的畫布分爲三個子圖。
add_subplot()方法就是添加一個子圖,其中的參數是一個數,例如131表示將畫布分爲1行3列(即3個子圖),該子圖爲第1個子圖。

P.S. 如果要添加第2以及第3個子圖,要首先畫完第一個子圖再執行fig2 = fig.add_subplot(132)。必須添加一個子圖畫一個子圖。
經測試,如果一次性添加完3個子圖,那麼後面plt的設置都只會在最後一個子圖上生效。

更正 添加多個子圖後,plt默認會指向最後一個添加的子圖,所以plt的操作都是針對最後一個添加的子圖的。
可以使用 plt.sca(fig1) (參數是前面創建的子圖的對象),來選擇前面創建的子圖,然後後面的操作就是針對選擇的fig1子圖的操作了。

畫線

下面我們在子圖1上進行畫圖。

fig1.plot(x, num1, label='a', linestyle='--', color='red', marker='D')
fig1.plot(x, num2, label='b', linestyle='-', color='blue', marker='o')
plt.yticks([0.1,0.2,0.3,0.4,0.5])  #設置y座標值
plt.xticks(x)  # 設置x座標值
# plt.xlim([0, 0.5])  # 縮放x軸到區間(0, 0.5)
# plt.ylim([0, 0.5])  # 縮放y軸到區間(0, 0.5)
plt.tick_params(labelsize=16)  # 設置座標字號
font1 = {'family' : 'Times New Roman',  # 設置字體
'weight' : 'normal',
'size'   : 23,
}
plt.legend(prop=font1,loc='best')
plt.grid(axis="y")  # 在圖中按y軸添加網格線
plt.xlabel(axis = x',font1)  # 設置x軸label
plt.ylabel('axis = y',font1)  # 設置y軸label
plt.title("title")  # 設置標題
plt.show()

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-RTH8WdAQ-1570340488900)(example.png “例子”)]
由於我們是1行3列的子圖,我們只畫了第一幅,所以右邊兩幅的位置現在都是空白,所以右邊看起來比較空。
上面的操作基本上都有註釋解釋。這裏記錄一下plot函數中的參數以及對線段的屬性設置。
plot函數中,x是橫座標數組,num1是縱座標數組。label是線段的標籤,linestyle是線的種類(比如虛線、實線等),color是線的顏色,marker是數據點的形狀。

linestyle

字符 樣式
‘-’ solid line
‘–’ dashed line
‘-.’ dash-dot line
‘:’ dotted line

marker

字符 樣式
‘.’ point marker
‘,’ pixel marker
‘o’ circle marker
‘v’ triangle down marker
‘^’ triangle up marker
‘<’ triangle left marker
‘>’ triangle right marker
‘1’ tri_down marker
‘2’ tri_up marker
‘3’ tri_left marker
‘4’ tri_right marker
‘s’ square marker
‘p’ pentagon marker
‘*’ star marker
‘h’ hexagon1 marker
‘H’ hexagon2 marker
‘+’ plus marker
‘x’ x marker
‘D’ diamond marker
‘d’ thin_diamond marker
‘_’ hline marker
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章