如何使用Python根据值而不是计数创建直方图?

nav*_*een 4 python matplotlib histogram

我想使用 Python 和 Matplotlib 根据数组中的值创建直方图,而不是根据数组中的值的计数。例如:-

X = [0,0,0,1,10,5,0,0,5]

如果我使用下面的代码

n, bins, patches = plt.hist(X) plt.show()

我得到这个直方图

这是计算出现次数并创建直方图。输出应该是这样的:- 预期情节

yat*_*atu 7

看起来您想要条形图而不是直方图。请注意,直方图是:

数值数据分布的准确表示

它与条形图不同,条形图与两个变量相关,而直方图仅与一个变量相关。要绘制条形图,您可以使用matplotlib.pyplot.bar

X = [0,0,0,1,10,5,0,0,5]

import matplotlib.pyplot as plt 
plt.bar(range(len(X)), X)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述