在这种情况下,如何使用 barh() 在条形图上显示每个条形图的值?

How to display the values on the bar plot for each bar with barh() in this case?

在这种情况下,如何在其顶部添加栏的值?

我想得到的是:

您应该添加为 matplotlib.axes.Axes.text
如果你有这样的情节:

import matplotlib.pyplot as plt


labels = ['A', 'B', 'C']
values = [150, 80, 10]


fig, ax = plt.subplots()

ax.barh(labels, values)

plt.show()

您可以使用此循环添加标签(您可能需要调整 x 轴限制以适合标签):

for i, value in enumerate(values):
    ax.text(value + 3, i, str(value))
xmin, xmax = ax.get_xlim()
ax.set_xlim(xmin, 1.1*xmax)