在 Matplotlib 中向水平條形圖添加值
條形圖是可視化資料和識別模式的有用工具。為了提高繪圖清晰度,直接在圖表上顯示每個長條的精確值通常很有幫助。這可以為解釋和分析提供方便的參考。
在 matplotlib 中,建立水平長條圖非常簡單。以下程式碼片段產生一個表示不同類別的頻率的長條圖:
import matplotlib.pyplot as plt import numpy as np # Data for the plot x = [u'INFO', u'CUISINE', u'TYPE_OF_PLACE', u'DRINK', u'PLACE', u'MEAL_TIME', u'DISH', u'NEIGHBOURHOOD'] y = [160, 167, 137, 18, 120, 36, 155, 130] # Create the bar plot fig, ax = plt.subplots() width = 0.75 # Bar width ind = np.arange(len(y)) # X locations for groups ax.barh(ind, y, width, color="blue") ax.set_yticks(ind + width / 2) ax.set_yticklabels(x, minor=False) plt.title('Bar Plot') plt.xlabel('Frequency') plt.ylabel('Category')
但是,該圖缺少長條圖上的值。若要新增值,您可以使用下列行擴充程式碼:
# Add bar values for i, v in enumerate(y): ax.text(v + 3, i, str(v), color='blue', fontweight='bold', verticalalignment='center')
此程式碼迭代 y 值並將每個值的字串表示形式新增至繪圖中。 ax.text 方法將文字定位在繪圖座標系中指定的 x 位置 (v 3) 和 y 位置 (i)。
產生的繪圖將在每個條形上顯示值,可以快速輕鬆地解釋數據:
[帶有值的條形圖圖像]
此增強功能大大提高了繪圖的可用性,並允許查看者快速掌握每個條代表的具體數值。
以上是如何將資料值新增至 Matplotlib 長條圖中的水平長條圖中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!