gpt4 book ai didi

python - 对于相同的数据,为什么 matplotlib 1.4.0 的 boxplot 与 matplotlib 2.2.0 的 boxplot 不同?

转载 作者:行者123 更新时间:2023-12-01 09:25:35 26 4
gpt4 key购买 nike

我使用以下代码对以第 5 个和第 95 个百分位数作为上限和下限的值进行箱线图。令人惊讶的是,我通过在 python 2.7.3 中使用 matplotlib 1.4.0 和在 python 3.6.5 中使用 matplotlib 2.2.0 得到了两个不同的图。版本 1.4.0 似乎显示最大值 (49.33),版本 2.2.0 显示 25 左右的值作为第 95 个百分位数,而实际的第 95 个百分位数是 36.13。造成这些差异的可能原因是什么?而且,哪一个应该被认为是正确的?

import numpy as np
import matplotlib.pyplot as plt

values = np.array([0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,49.33,0.00,0.00,25.33])

f, (ax1) = plt.subplots()
ax1.boxplot(values, whis=[5.0,95.0], showfliers=False)
plt.show()

Boxplot using matplotlib 1.4.0 in python 2.7.3

Boxplot using matplotlib 2.2.0 in python 3.6.5

最佳答案

我认为很难说哪一个是正确的,因为 mustache 位置仅取决于定义。

在当前的 matplotlib 版本中,晶须位置的定义是它显示在 whis 参数确定的范围内的最高数据处。
此处使用 whis=[5.0,95.0],95% 为 ~36。低于或等于 36 的最高数据为 25.33;因此晶须以该值显示。

我不知道 matplotlib 1.4 中箱线图初始版本中使用的定义,但我可以想象它是给 whis 的百分位范围之外的最低值;因此它将显示在 49.33

关于python - 对于相同的数据,为什么 matplotlib 1.4.0 的 boxplot 与 matplotlib 2.2.0 的 boxplot 不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50427368/

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