gpt4 book ai didi

python - 每个 bin 中点数相等的直方图

转载 作者:太空狗 更新时间:2023-10-29 18:27:21 25 4
gpt4 key购买 nike

我有一个排序向量 points 有 100 个点。我现在想创建两个直方图:第一个直方图应该有 10 个宽度相等的 bin。第二个也应该有 10 个直方图,但不一定是等宽的。第二,我只希望直方图在每个 bin 中具有相同数量的点。因此,例如,直方图中的第一个条形可能非常短且宽,而直方图中的第二个条形可能非常高且窄。我有使用 matplotlib 创建第一个直方图的代码,但现在我不确定如何创建第二个直方图。

import matplotlib.pyplot as plt
points = [1,2,3,4,5,6, ..., 99]
n, bins, patches = plt.hist(points, 10)

编辑:

尝试下面的解决方案,我有点困惑为什么我的直方图中所有条形的高度都相同。

enter image description here

最佳答案

本题为similar to one我不久前写了一个答案,但足够不同以保证它自己的问题。事实证明,该解决方案使用与我的其他答案基本相同的代码。

def histedges_equalN(x, nbin):
npt = len(x)
return np.interp(np.linspace(0, npt, nbin + 1),
np.arange(npt),
np.sort(x))

x = np.random.randn(100)
n, bins, patches = plt.hist(x, histedges_equalN(x, 10))

此解决方案给出了具有等高分箱的直方图,因为---根据定义---直方图是每个分箱中点数的计数。

要获取 pdf(即密度函数),请使用 normed=True kwarg to plt.hist。如我的 other answer 中所述.

关于python - 每个 bin 中点数相等的直方图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39418380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com