在Matplotlib 中為多個子圖共享顏色條
在Matplotlib 中建立多個子圖時,可能需要為所有子圖顯示一個公共色條繪圖,確保一致的配色方案和參考。在比較不同子圖的值和模式時,這尤其有用。
困境
共享色條時的一個常見問題是各個色條的自相關,每個色條調整大小以適應子圖邊界框中的圖和色條。這可能會導致子圖大小不均勻,顯得不一致。
解決方案:分離色條
此問題的解決方案是建立一個專用於色條的單獨軸。然後,使用該軸獨立於繪圖顯示色條,從而更好地控制其大小和位置。
要實作此方法,請依照下列步驟操作:
這裡是一個範例程式碼,示範了方法:
import numpy as np import matplotlib.pyplot as plt fig, axes = plt.subplots(nrows=2, ncols=2) for ax in axes.flat: im = ax.imshow(np.random.random((10,10)), vmin=0, vmax=1) fig.subplots_adjust(right=0.8) cbar_ax = fig.add_axes([0.85, 0.15, 0.05, 0.7]) fig.colorbar(im, cax=cbar_ax) plt.show()
此程式碼建立四個子圖,並將單一色條放置在子圖的右側,如附圖所示。色條與子圖共享配色方案,其大小和位置與子圖無關。
透過執行以下步驟,可以在多個子圖之間有效共享單一色條,從而確保一致性並提高資料的呈現。
以上是如何在多個 Matplotlib 子圖中共用單一色條?的詳細內容。更多資訊請關注PHP中文網其他相關文章!