Python修改柱狀圖邊緣柱子與圖邊界的距離

瘋狂學習GIS發表於2023-02-07

  本文介紹基於Pythonmatplotlib.pyplot模組,修改柱狀圖、條形圖最兩側的柱子影像邊緣之間距離的方法。

  最近,繪製了一個水平的柱狀圖,但是發現圖的上、下邊距(不是柱子與柱子相互之間的間距,而是最上方與最下方柱子各自與圖邊緣距離)相對較大,非常影響美觀。同時需要說明的是,本文這裡的柱狀圖縱座標變數是代表變數名稱的不同的字串,而不是簡單的資料範圍,如下圖所示:

  圖下方則是這個樣子:

  可以看到,整體感覺圖的邊距太大,非常不美觀;因此,需要對其加以調整。

  經過不斷地探索與嘗試,發現調整所需程式碼其實非常簡單,僅僅需要兩行;但這個程式碼需要藉助Pythonmatplotlib.pyplot這一模組,大家如果沒有安裝的話需要提前安裝一下這個庫。

y_num=np.arange(len(train_X_column_name))
plt.ylim(min(y_num)-1,max(y_num)+1)

  其中,train_X_column_name是y軸變數,也就是不同變數的名稱字串組成的列表,其每一個元素都是一個字串。我們透過求len()出列表長度,進而獲取一個從0開始到列表長度為止的範圍;隨後透過ylim限定縱座標的最大、最小值,亦即各空出一個柱子的寬度。

  得到修改後的圖邊距如下,可以看到,修改後的結果就非常美觀了。

  圖下方則是這個樣子:

  這樣子看上去,整個柱狀圖的邊距比較符合我們的審美,整個圖看起來也非常緊湊。

相關文章