本文介紹基於Python中matplotlib.pyplot
模組,修改柱狀圖、條形圖最兩側的柱子與影像邊緣之間距離的方法。
最近,繪製了一個水平的柱狀圖,但是發現圖的上、下邊距(不是柱子與柱子相互之間的間距,而是最上方與最下方柱子各自與圖邊緣的距離)相對較大,非常影響美觀。同時需要說明的是,本文這裡的柱狀圖縱座標變數是代表變數名稱的不同的字串,而不是簡單的資料範圍,如下圖所示:
圖下方則是這個樣子:
可以看到,整體感覺圖的邊距太大,非常不美觀;因此,需要對其加以調整。
經過不斷地探索與嘗試,發現調整所需程式碼其實非常簡單,僅僅需要兩行;但這個程式碼需要藉助Python中matplotlib.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
限定縱座標的最大、最小值,亦即各空出一個柱子的寬度。
得到修改後的圖邊距如下,可以看到,修改後的結果就非常美觀了。
圖下方則是這個樣子:
這樣子看上去,整個柱狀圖的邊距比較符合我們的審美,整個圖看起來也非常緊湊。