我有一个数组,其中每个项目可以是 5 个值之一 ( A, B, C, D, E)。我想显示这些值的直方图:from matplotlib import pyplot as pltvalues = ["D", "E", "A", "E", "B", "C", "A", "A", "D", "E"]plt.hist(values)然而,第二条和第三条之间存在很大差距:有什么方法可以确保列之间的间隙大小相同(无论列数多少)?
1 回答
心有法竹
TA贡献1866条经验 获得超5个赞
有趣的问题。我从未尝试过用字符串制作直方图。我不太确定它是如何工作的。
尽管它有点罗嗦,但我宁愿依靠计算出现的次数并使用bar()来绘制结果:
values = ["D", "E", "A", "E", "B", "C", "A", "A", "D", "E"]
val,count = np.unique(values, return_counts=True)
fig, ax = plt.subplots()
ax.bar(x=range(len(val)), height=count)
ax.set_xticks(range(len(val)))
ax.set_xticklabels(val)
添加回答
举报
0/150
提交
取消