共享軸#

您可以透過傳遞 Axes 實例作為 sharexsharey 關鍵字引數,將一個軸的 x 或 y 軸限制與另一個軸共享。

在一個軸上變更軸限制會自動反映在另一個軸上,反之亦然,因此當您使用工具列瀏覽時,這些軸會在它們的共享軸上彼此跟隨。軸刻度(例如,對數與線性)的變更也是如此。但是,刻度標籤可能會有所不同,例如,您可以選擇性地關閉一個軸上的刻度標籤。

以下範例示範如何在各種軸上自訂刻度標籤。共享軸會共享刻度定位器、刻度格式化器、視圖限制和轉換(例如,對數、線性)。但是,刻度標籤本身不共享屬性。這是一項功能而非錯誤,因為您可能希望在上層軸上的刻度標籤較小,例如,在以下範例中。

如果您想要關閉給定軸的刻度標籤(例如,在 subplot(211) 或 subplot(212) 上),您無法執行標準技巧

setp(ax2, xticklabels=[])

因為這會變更刻度格式化器,而此格式化器在所有軸之間共享。但是,您可以變更標籤的可見性,這是一個屬性

setp(ax2.get_xticklabels(), visible=False)
import matplotlib.pyplot as plt
import numpy as np

t = np.arange(0.01, 5.0, 0.01)
s1 = np.sin(2 * np.pi * t)
s2 = np.exp(-t)
s3 = np.sin(4 * np.pi * t)

ax1 = plt.subplot(311)
plt.plot(t, s1)
plt.tick_params('x', labelsize=6)

# share x only
ax2 = plt.subplot(312, sharex=ax1)
plt.plot(t, s2)
# make these tick labels invisible
plt.tick_params('x', labelbottom=False)

# share x and y
ax3 = plt.subplot(313, sharex=ax1, sharey=ax1)
plt.plot(t, s3)
plt.xlim(0.01, 5.0)
plt.show()
shared axis demo

標籤:元件:軸 繪圖類型:線 等級:初學者

腳本總執行時間: (0 分鐘 1.066 秒)

由 Sphinx-Gallery 產生圖庫