首頁 >後端開發 >Python教學 >如何將資料值新增至 Matplotlib 長條圖中的水平長條圖中?

如何將資料值新增至 Matplotlib 長條圖中的水平長條圖中?

Linda Hamilton
Linda Hamilton原創
2024-11-24 03:08:16264瀏覽

How to Add Data Values to Horizontal Bars in a Matplotlib Bar Plot?

在 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn