首頁 > 後端開發 > Python教學 > 如何在多個 Matplotlib 子圖中有效率地建立和繪圖?

如何在多個 Matplotlib 子圖中有效率地建立和繪圖?

Susan Sarandon
發布: 2024-12-20 13:57:09
原創
763 人瀏覽過

How to Efficiently Create and Plot in Multiple Matplotlib Subplots?

在多個子圖中繪圖

可以透過多種方法在 Matplotlib 中建立多個子圖。理解fig和axes變數的作用至關重要。

fig,axes結構

在程式碼片段fig,axes = plt.subplots(nrows=2 , ncols=2)、fig 和axes 分別分配給傳回的figure 和Axes 物件的二維數組。軸數組包含各個子圖,可以對特定子圖進行後續繪圖操作。

子圖的替代方法

雖然subplots 方法同時建立一個圖形及其子圖,但它是也可以單獨建立:

fig = plt.figure()
axes = fig.subplots(nrows=2, ncols=2)
登入後複製

但是這種方法比較少首選,因為它需要額外的步驟來在每個子圖上繪製。

具有多個子圖的範例

考慮以下程式碼,該程式碼在四個子圖的每一個上繪製一條簡單曲線:

import matplotlib.pyplot as plt

x = range(10)
y = range(10)

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

for row in ax:
    for col in row:
        col.plot(x, y)

plt.show()
登入後複製

此程式碼產生一個包含四個子圖的圖形,每個子圖都有相同的曲線。 for 迴圈迭代 ax 陣列的行和列,將每個子圖指派給 col 變數進行繪圖。

另一種替代方法

雖然不那麼優雅,還可以手動建立並分別在每個子圖上繪製:

fig = plt.figure()

plt.subplot(2, 2, 1)
plt.plot(x, y)

plt.subplot(2, 2, 2)
plt.plot(x, y)

plt.subplot(2, 2, 3)
plt.plot(x, y)

plt.subplot(2, 2, 4)
plt.plot(x, y)

plt.show()
登入後複製

這種方法涉及手動建立一個圖形指定每個子圖的位置,然後在它們上繪圖。

以上是如何在多個 Matplotlib 子圖中有效率地建立和繪圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板