Python使用matplotlib給柱狀圖添加數據標簽bar_label()
0.更新matplotlib庫
本文後續的實驗過程都是基於matplotlib版本大於等於3.4.1,如果版本較低,是無法實行後續操作的,如何在Pycharm中直接更新matplotlib庫的版本,請參照方法:以tensorflow庫為例用Pycharm更新第三方庫
1.導入庫
直接導入matplotlib.pyplot庫,代碼為:
import matplotlib.pyplot as plt
2.數據準備
用list分別準備橫坐標和縱坐標的數據。
# 構造數據 X_set = [1, 2, 3, 4, 5] # X軸數值 Y_set = [128, 211, 136, 234, 150] # Y軸數據
3.繪制柱狀圖
繪圖代碼如下:
p1 = plt.bar(X_set, Y_set, width= 0.35, label='value') # width表示柱子的寬度 plt.bar_label(p1, label_type='edge') # label_type=‘edge'表示將數據值標簽放在柱子頂端,label_type=‘center'表示將數據值標簽放在柱子中間。 plt.title('The distribution of XXX') plt.show()
4.繪圖結果
上述繪圖結果如下:
5.完整代碼
完整代碼如下:
import matplotlib.pyplot as plt # 構造數據 X_set = [1, 2, 3, 4, 5] Y_set = [128, 211, 136, 234, 150] p1 = plt.bar(X_set, Y_set, width= 0.35, label='value') plt.bar_label(p1, label_type='edge') plt.title('The distribution of XXX') plt.show()
6.bar_label()相關參數的補充說明
函數的簽名為matplotlib.pyplot.bar_label(container, labels=None, *, fmt='%g', label_type='edge', padding=0, **kwargs)
。
函數的參數為:
- (1)container:柱子的容器對象,通常為bar或barh函數返回值。 .BarContainer對象。必備參數。
- (2)labels : 標簽文本列表。類數組對象。可選參數。如果為None,則值為使用fmt參數格式化的柱子的數據(柱子的高度)。
- (3)fmt:標簽的格式字符串。 字符串。默認值為’%g’,即將標簽值格式化為浮點數。
- (4)label_type :標簽類型。取值范圍為 {'edge', 'center'},默認值為'edge'。對於普通柱狀圖,該參數僅用於控制標簽的位置,對於堆積柱狀圖,不同標簽類型對應不同的標簽值。
- (4.1)
'edge'
: 標簽位於柱子的端點。顯示的值為柱子的端點位置。註意!對於堆積柱狀圖即堆積的多個柱子的總長度。 - (4.2)
'center'
:標簽位於柱子的中部。顯示的值為柱子的長度。
- (4.1)
- (5)padding : 標簽與柱子之間的距離,單位為像素。浮點數。默認值為0。
- (6)**kwargs:傳遞給
annotate()
的其他參數。返回值為標簽的Text對象列表。
到此這篇關於Python使用matplotlib給柱狀圖添加數據標簽bar_label()的文章就介紹到這瞭,更多相關matplotlib給柱狀圖添數據標簽內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python數據分析Matplotlib 柱狀圖繪制
- Python使用bar繪制堆積/帶誤差棒柱形圖的實現
- Python Matplotlib數據可視化模塊使用詳解
- python數學建模之Matplotlib 實現圖片繪制
- Python數據分析之Matplotlib數據可視化