在 Matplotlib 中,可以修改 x 軸的外觀以指示兩個值範圍之間的不連續性。
雖然沒有直接的方法來創建對於不連續軸,您可以透過自訂軸標籤和外觀來實現類似的效果。一種方法是使用自訂變換來建立不連續軸。
如果您不想建立自訂變換,可以使用子圖來實現所需的效果。透過建立兩個具有不同 x 軸限制的子圖並隱藏它們之間的脊柱,您可以模擬不連續的軸。
import matplotlib.pyplot as plt import numpy as np x = np.r_[0:1:0.1, 9:10:0.1] y = np.sin(x) fig, (ax, ax2) = plt.subplots(1, 2, sharey=True) ax.plot(x, y, 'bo') ax2.plot(x, y, 'bo') ax.set_xlim(0, 1) ax2.set_xlim(9, 10) ax.spines['right'].set_visible(False) ax2.spines['left'].set_visible(False) ax.yaxis.tick_left() ax2.yaxis.tick_right() plt.subplots_adjust(wspace=0.15) plt.show()
此程式碼建立一個包含兩個子圖的圖,每個子圖顯示不同範圍的 x 值。子圖之間的重疊被隱藏,以創建不連續軸的外觀。
要加入斷裂軸線 (//) 效果,可以使用以下程式碼:
ax.plot((1-d,1+d),(-d,+d), **kwargs) # top-left diagonal ax.plot((1-d,1+d),(1-d,1+d), **kwargs) # bottom-left diagonal kwargs.update(transform=ax2.transAxes) # switch to the bottom axes ax2.plot((-d,d),(-d,+d), **kwargs) # top-right diagonal ax2.plot((-d,d),(1-d,1+d), **kwargs) # bottom-right diagonal
其中 d 表示軸座標中對角線的大小。此代碼在每個軸的角上添加對角線,給人一種斷軸的印象。
以上是如何在 Matplotlib 中建立不連續的 X 軸?的詳細內容。更多資訊請關注PHP中文網其他相關文章!