如何在Matplotlib直方图上显示柱子上的计数?
为了在Matplotlib直方图上显示柱子上的计数,我们需要遍历每个图块,并使用 text() 方法将值放置在图块上方。
步骤
- 设置图形大小并调整子图之间和周围的间距。
- 制作数字列表以制作直方图。
- 使用 hist() 方法来制作直方图。
- 遍历图块并计算每个图块的中间值和图块的高度,以放置文本。
- 要显示图形,请使用 show() 方法。
示例
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
data = [3, 5, 1, 7, 9, 5, 3, 7, 5]
_, _, patches = plt.hist(data, align="mid")
for pp in patches:
x = (pp._x0 + pp._x1)/2
y = pp._y1 + 0.05
plt.text(x, y, pp._y1)
plt.show()