Python是一種多用途、高級、解釋型編程語言。它是一種動態類型語言,具有高級內置數據結構,支持面向對象編程、結構化編程和函數式編程方式。Python語言旨在簡化代碼的閱讀、編寫和維護,同時也支持標準庫和不同的第三方模塊的使用。
條形圖是一種常用的數據可視化方式,在Python中使用Matplotlib庫可以輕鬆地生成條形圖。然而,有時候需要在條形圖中添加數據標籤,以便更好地闡述數據,本文將從以下幾個方面詳細闡述Python條形圖添加數據標籤。
一、新增數據標籤
在Python中使用Matplotlib庫生成條形圖,並新增數據標籤需要使用以下代碼:
import matplotlib.pyplot as plt
# 數據
x = [1, 2, 3, 4, 5]
y = [10, 24, 36, 40, 70]
# 生成條形圖
plt.bar(x, y)
# 新增數據標籤
for a, b in zip(x, y):
plt.text(a, b+2, '%.0f' % b, ha='center', va='bottom')
plt.show()
上述代碼中的 plt.text 方法用於新增數據標籤,其中 a,b 分別表示條形圖中每個條形圖的 (x,y) 坐標位置。%
二、標籤位置、字體及字號
Python條形圖添加數據標籤時,需要熟悉數據標籤的位置、字體及字號。下面是一個例子,其中給出了不同位置、字體及字號的數據標籤。
import matplotlib.pyplot as plt
# 數據
x = [1, 2, 3, 4, 5]
y = [10, 24, 36, 40, 70]
# 生成條形圖
plt.bar(x, y)
# 新增數據標籤
for a,b in zip(x, y):
plt.text(a, b+2, '%.0f' % b, ha='center', va='bottom',fontdict={'fontname': 'Comic Sans MS', 'fontsize': 10})
# 修改數據標籤位置
plt.rcParams['xtick.bottom'] = plt.rcParams['xtick.labelbottom'] = False
plt.rcParams['xtick.top'] = plt.rcParams['xtick.labeltop'] = True
plt.show()
fontdict 參數用於設置字體及字號,可根據需要自行修改。而 ha 參數表示水平對齊方式,可以設置為 ‘left’, ‘right’, ‘center’。va 參數表示垂直對齊方式,可以設置為 ‘top’, ‘bottom’, ‘center’, ‘baseline’。
三、數據標籤顏色及邊框
另外還可以對數據標籤進行顏色和邊框的設置,下面是第三個例子,其中給出了數據標籤顏色及邊框的設置。
import matplotlib.pyplot as plt
# 數據
x = [1, 2, 3, 4, 5]
y = [10, 24, 36, 40, 70]
# 生成條形圖
plt.bar(x, y)
# 新增數據標籤
for a,b in zip(x, y):
plt.text(a, b+2, '%.0f' % b, ha='center', va='bottom',fontdict={'fontname': 'Comic Sans MS', 'fontsize': 10},
bbox=dict(boxstyle='round,pad=0.4', fc='yellow', alpha=0.5, ec='black'))
plt.show()
其中 bbox 參數用於設置邊框的屬性,參數 boxstyle 表示邊框樣式,可設置為 ’round’, ‘square’, ’round4′, ‘sawtooth’, ‘larrow’, ‘rarrow’, ‘darrow’, ‘uarrow’, ‘circle’ 等;參數 ec 表示邊框顏色,可選值包括顏色名稱或者RGB顏色;參數 fc 表示填充顏色,可選值包括顏色名稱或者RGB顏色;參數 alpha 表示透明度。
四、條形圖標籤旋轉
在Python條形圖添加旋轉標籤時,需要根據需要旋轉數據標籤的角度。下面的代碼展示了如何使用 Matplotlib 庫旋轉條形圖標籤。
import matplotlib.pyplot as plt
# 數據
x = ['蘋果', '橘子', '香蕉', '西瓜']
y = [10, 24, 36, 40]
# 生成條形圖
plt.bar(x, y)
# 旋轉標籤
plt.xticks(rotation=45)
plt.show()
其中 plt.xticks 方法用於設置 x 軸的標籤值及相關屬性,rotation=45 表示將標籤旋轉 45 度。
五、修改標籤格式
在Python條形圖添加數據標籤時,有時候需要對標籤進行格式化或修改。下面的代碼演示了如何格式化數據標籤。
import matplotlib.pyplot as plt
# 數據
x = ['蘋果', '橘子', '香蕉', '西瓜']
y = [10, 24, 36, 40]
# 生成條形圖
plt.bar(x, y)
# 新增數據標籤
for a, b in enumerate(y):
plt.text(a, b+2, '{:.0f}%'.format(b/sum(y)*100), ha='center', fontweight='bold')
plt.show()
這裡使用了 enumerate 函數來獲取每個標籤的索引值。使用 ‘{:.0f}%’ 格式化數據標籤為百分比格式,並使用 fontweight 參數設置為粗體字體。sum(y) 計算 y 值的總和,並將其用於計算百分比值,從而格式化數據標籤。
總結
本文從新增數據標籤、標籤位置、字體及字號、數據標籤顏色及邊框、條形圖標籤旋轉及修改標籤格式等方面,詳細闡述了Python條形圖添加數據標籤的方法和技巧。希望讀者能夠根據自己的需要靈活地應用這些技巧,生成更加美觀、實用的條形圖。
原創文章,作者:OOJVY,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/374906.html