显示在条形图中绘制的 y 轴值水平线

2023-11-21

我正在使用 (matplotlib.pyplot as plt) matplotlib 绘制条形图。在该条形图上,我使用 axhline() 函数以灰色绘制了一条水平线。我希望水平线起点的点(y 轴上的值 = 42000)也应显示该值,即 42000 。该怎么办?

这是我当前的图像:

enter image description here

在下图中,看到“39541.52”点了吗?我想在我的图像上完全显示,我的点值为“42000”

enter image description here


可以创建标签,例如使用ax.text()。要定位标签,一个不错的技巧是使用允许使用 x 位置的轴坐标和 y 位置的数据坐标的变换。

ax.text(1.02, 4.2e4, "42000", .. , transform=ax.get_yaxis_transform())

完整代码:

import matplotlib.pyplot as plt
import matplotlib.colors
import numpy as np

fig = plt.figure()
ax = fig.add_subplot(111)
x = [0,1,2,3]
y = np.array([34,40,38,50])*1e3
norm = matplotlib.colors.Normalize(30e3, 60e3)
ax.bar(x,y, color=plt.cm.plasma_r(norm(y)) )
ax.axhline(4.2e4, color="gray")
ax.text(1.02, 4.2e4, "42000", va='center', ha="left", bbox=dict(facecolor="w",alpha=0.5),
        transform=ax.get_yaxis_transform())
plt.show()

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

显示在条形图中绘制的 y 轴值水平线 的相关文章

随机推荐