Python Matplotlib在X轴上具有百分位数据

时间:2019-04-09 19:43:02

标签: python-3.x matplotlib

我可能有一个简单的问题,但是我花了一个多小时才在这里和Google上进行检查,却找不到所需的解决方案。 我的简单目标是为存储在数据框列中的值绘制直方图。 我面临的问题是,我需要使用x刻度线来定义与百分比值相对应的垃圾箱

perc = [0.10, 0.20, 0.30, 0.50, 0.70, 0.90, 1.0]  # percentile values

这意味着直方图将具有不均匀的bin宽度。 我尝试了此解决方案Percentiles on X axis with matplotlib,但是这给了我大量的竖线,而不仅仅是对应于我的百分比水平的垃圾箱。 我在这里python plot hist(graph) with percentile也看到了类似的问题,但没有任何答案。

除了我的问题。 我正在尝试以下代码,但实际上并不能满足我的需要。

data = df["sales"].values  # this is a an array with 58k values, 99% of which between 100 and 5000 and 1% of which between 1mln and 2mln
perc = [0, 0.10, 0.20, 0.30, 0.50, 0.70, 0.90, 0.99, 1.0] 
perc_values = np.percentile(data, perc)
histaa = np.histogram(data, bins = perc_values)
plt.hist(histaa, bins = perc_values);

我获得的垃圾箱的宽度不同,并且情节有很大的空白区域。 还添加了屏幕截图。 enter image description here我想知道是否有人可以提供帮助。 非常感谢

0 个答案:

没有答案