首頁 > 後端開發 > Python教學 > 如何在 Matplotlib 中的不同圖形中重複使用 AxesSubplot 物件?

如何在 Matplotlib 中的不同圖形中重複使用 AxesSubplot 物件?

Susan Sarandon
發布: 2024-11-28 16:18:11
原創
585 人瀏覽過

How to Reuse AxesSubplot Objects Across Different Figures in Matplotlib?

跨圖形共享 AxesSubplot 物件

在 matplotlib 中,通常使用 Figure.add_subplot() 方法建立 AxesSubplot 物件。但是,您可能希望將軸子圖的建立與圖形實例分離,以便在不同的圖形中重複使用它們。

獨立建立AxesSubplot 物件

要實現這一點,您可以利用替代方法:

import matplotlib.pyplot as plt

axes = plt.AxesSubplot(fig, 1, 1, 1)  # Create an empty axes subplot
axes.set_xlabel("X-Label")  # Populate axes settings
axes.set_ylabel("Y-Label")
登入後複製

這允許您建立AxesSubplot 對象,而無需將其與特定圖形關聯起來。

將 AxesSubplot 物件加入圖形

獨立建立軸子圖後,可以使用下列方法將它們新增至圖形:

# Add axes to figure 1
fig1 = plt.figure()
fig1.axes.append(axes)

# Add axes to figure 2
fig2 = plt.figure()
fig2.axes.append(axes)
登入後複製

重複使用軸子圖

透過向多個圖形添加軸子圖,您可以輕鬆地重複使用它們。例如,您可以定義一個函數來在指定的軸子圖上繪製資料:

def plot_on_axes(axes, data):
    axes.plot(data)
登入後複製

然後可以在各種圖形中使用此函數在共用軸子圖上繪製相同的資料。

調整軸的大小

將 AxesSubplot 物件從一個圖形移動到另一個圖形可能需要調整大小以符合新人物的佈局。若要調整座標區的大小,您可以使用set_geometry() 方法:

axes.set_geometry(1, 2, 1)  # Update axes geometry for figure 1, with two columns
登入後複製

範例

以下程式碼片段示範如何獨立建立和重複使用座標區子圖:

import matplotlib.pyplot as plt

# Create independent axes subplots
ax1 = plt.AxesSubplot(None, 1, 1, 1)
ax2 = plt.AxesSubplot(None, 1, 1, 1)

# Populate axes settings
ax1.set_xlabel("X1")
ax1.set_ylabel("Y1")
ax2.set_xlabel("X2")
ax2.set_ylabel("Y2")

# Add axes subplots to figure 1
fig1 = plt.figure()
fig1.axes.append(ax1)
fig1.axes.append(ax2)

# Add axes subplots to figure 2
fig2 = plt.figure()
fig2.axes.append(ax1)

plt.show()
登入後複製

此範例建立兩個軸子圖,將它們新增到兩個不同的圖形中,並顯示他們。

以上是如何在 Matplotlib 中的不同圖形中重複使用 AxesSubplot 物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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