matpyplot簡單使用

2022-09-24 05:06:09 字數 3859 閱讀 1207

matplotlib 生成的圖形主要由以下幾個部分構成:

在 matplotlib 中,物件導向程式設計的核心思想是建立圖形物件(figure object)。通過圖形物件來呼叫其它的方法和屬性,這樣有助於我們更好地處理多個畫布。在這個過程中,pyplot 負責生成圖形物件,並通過該物件來新增乙個或多個 axes 物件(即繪圖區域)。

備註:可以使用figsize屬性指定畫布大小,單位英吋

#建立乙個空白畫布

fig = plt.figure()

# 使用 add_axes() 將 axes 軸域新增到畫布中,

'''序列中的 4 個數字分別對應圖形的左側,底部,寬度,和高度,且每個數字必須介於 0 到 1 之間。

應該是指繪圖區距離畫布的左側和底部多遠,寬度和高度分別佔畫布多大

'''ax=fig.add_axes([0,0,1,1])

matplotlib 定義了乙個 axes 類(軸域類),該類的物件被稱為 axes 物件(即軸域物件),它指定了乙個有數值範圍限制的繪圖區域。在乙個給定的畫布(figure)中可以包含多個 axes 物件,但是同乙個 axes 物件只能在乙個畫布中使用。

通過呼叫圖形影象的add_axes()方法可以將 axes 物件新增到畫布中。axes 物件在畫布中的位置由函式引數rect決定。rect 是位置引數,接受乙個由 4 個元素組成的浮點數列表,形如 [left, bottom, width, height] ,它表示新增到畫布中的矩形區域的左下角座標(x, y),以及寬度和高度。

axes 類的成員函式

axes.plot():使用方式同plt.plot()

它可以繪製點和線,語法格式如下:

# 畫單條線

plot([x], y, [fmt], *, data=none, **kwargs)

# 畫多條線

plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)

引數說明:**kwargs: 可選,用在二維平面圖上,設定指定屬性,如標籤,線的寬度等。

其他:axes.set_xlabel()/set_ylabel()/set_title()使用方式類似plt.xlabel()/ylabel()/title()

使用xlabel()ylabel()方法來設定 x 軸和 y 軸的標籤

使用title()方法來設定標題

標題與標籤的定位

詳細:matplotlib subplot()函式用法詳解 (biancheng.net)

在使用 matplotlib 繪圖時,我們大多數情況下,需要將一張畫布劃分為若干個子區域,之後,我們就可以在這些區域上繪製不用的圖形。matplotlib.pyplot模組提供了乙個 subplot() 函式,它可以均等地劃分畫布,該函式的引數格式如下:

plt.subplot(nrows, ncols, index)

nrows 與 ncols 表示要劃分幾行幾列的子區域(nrows*nclos表示子圖數量),index 的初始值為1,用來選定具體的某個子區域。

配合圖形物件:

使用函式add_subplot(nrows, ncols, index)函式返回乙個 axes 物件。

要調整子圖之間的間距使用函式:

fig.subplots_adjust(

left=none,

bottom=none,

right=none,

top=none,

wspace=none,

hspace=none,

)

matplotlib.pyplot模組提供了乙個 subplots() 函式,它的使用方法和 subplot() 函式類似。其不同之處在於,subplots() 既建立了乙個包含子圖區域的畫布,又建立了乙個 figure 圖形物件,而 subplot() 只是建立乙個包含子圖區域的畫布。

subplots 的函式格式如下:

fig , ax = plt.subplots(nrows, ncols)

備註:可以設定引數constrained_layout=true自適應子圖間距

nrows 與 ncols 表示兩個整數引數,它們指定子圖所佔的行數、列數。

函式的返回值是乙個元組,包括乙個圖形物件和乙個axes物件陣列:[nrows, ncols];可以通過陣列索引方式訪問axes物件。

matplotlib.pyplot模組提供了 subplot2grid() ,該函式能夠在畫布的特定位置建立 axes 物件(即繪圖區域)。不僅如此,它還可以使用不同數量的行、列來建立跨度不同的繪圖區域。與 subplot() 和 subplots() 函式不同,subplot2gird() 函式以非等分的形式對畫布進行切分,並按照繪圖區域的大小來展示最終繪圖結果。

函式語法格式如下:

plt.subplot2grid(shape, location, rowspan, colspan)

引數含義如下:

axes 物件提供的 grid() 方法可以開啟或者關閉畫布中的網格(即是否顯示網格)以及網格的主/次刻度。除此之外,grid() 函式還可以設定網格的顏色、線型以及線寬等屬性。

grid() 的函式使用格式如下:

grid(color='b', ls = '-.', lw = 0.25)

引數含義如下:

網格在預設狀態下是關閉的,通過呼叫上述函式,網格會被自動開啟,如果您只是想開啟不帶任何樣式的網格,可以通過 grid(true) 來實現。

設定座標軸範圍axes.set_xlim(下限, 上限)

設定刻度

方法1

採用axes.set_xticks(ticks)方法,x軸的刻度就是一維陣列ticks。也可以通過set_xticklabels()函式設定與刻度線相對應的刻度標籤。

方法2

見:(38條訊息) matplotlib設定座標軸刻度間隔_單單乙個越字的部落格-csdn部落格_matplotlib座標軸刻度間距

import matplotlib.pyplot as plt

plt.rcparams["font.sans-serif"]=["simhei"] #設定字型

plt.rcparams["axes.unicode_minus"]=false #該語句解決影象中的「-」負號的亂碼問題

簡單使用Git

1.登陸伺服器 git 伺服器位址 git xx.yy.zz.com.cn ssh p steven git xx.yy.zz.com.cn 密碼認證後 伺服器控制台下 cd mnt disk1 moblin kernel linux 2.6.29.y.git git branch 列出branch...

vector 簡單使用

vector是c 標準模板庫中的部分內容,它是乙個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。vector之所以被認為是乙個容器,是因為它能夠像容器一樣存放各種型別的物件,簡單地說,vector是乙個能夠存放任意型別的動態陣列,能夠增加和壓縮資料。為了可以使用vector,必須在你的標頭...

簡單AJAX 使用

初使化集合 floatjson soundjson messagejson if str null js解析xml function jsxml severityvalue,severityquomodo,commonvalue,commonquomodo,promptvalue,promptquo...