gpt4 book ai didi

python - 使用 matplotlib 的 CDF 直方图末尾的垂直线

转载 作者:太空狗 更新时间:2023-10-29 20:13:38 25 4
gpt4 key购买 nike

我正在尝试创建 CDF,但在图表的末尾有一条垂直线,如下所示:

plot

我读到他的是因为 matplotlib 使用 bins 的末端来绘制垂直线,这是有道理的,所以我在我的代码中添加如下:

bins = sorted(X) + [np.inf]

其中 X 是我正在使用的数据集,并在绘图时将 bin 大小设置为此:

plt.hist(X, bins = bins, cumulative = True, histtype = 'step', color = 'b')

这确实删除了末尾的线并产生了预期的效果,但是当我现在对该图进行归一化时它会产生错误:

ymin = max(ymin*0.9, minimum) if not input_empty else minimum

UnboundLocalError: local variable 'ymin' referenced before assignment

有没有办法用

规范化数据
bins = sorted(X) + [np.inf]

在我的代码中还是有其他方法可以删除图表上的线条?

最佳答案

另一种绘制 CDF 的方法如下(在我的示例中,X 是从单位法线中抽取的一堆样本):

import numpy as np
import matplotlib.pyplot as plt

X = np.random.randn(10000)
n = np.arange(1,len(X)+1) / np.float(len(X))
Xs = np.sort(X)
fig, ax = plt.subplots()
ax.step(Xs,n)

enter image description here

关于python - 使用 matplotlib 的 CDF 直方图末尾的垂直线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39728723/

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