繁体   English   中英

如何避免 matplotlib 历史中条形之间的不同间隙?

[英]How to avoid different gaps between bars in matplotlib hist?

我有一个数组,其中每个项目可以是 5 个值之一( ABCDE )。 我想显示这些值的直方图:

from matplotlib import pyplot as plt

values = ["D", "E", "A", "E", "B", "C", "A", "A", "D", "E"]
plt.hist(values)

但是,第 2 条和第 3 条之间存在较大差距:

在此处输入图像描述

有什么方法可以确保列之间的间隙大小相同(无论列数如何)?

有趣的问题。 我从来没有尝试过用字符串做直方图。 我不太确定它几乎是如何工作的。

尽管它有点罗嗦,但我宁愿依靠计算出现的次数并使用bar()到 plot 结果:

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)

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM