我使用http://matplotlib.org/examples/pylab_examples/boxplot_demo2.html示例使用whis=1.5
如何从中位数+-5%
添加第二组胡须。
答案 0 :(得分:2)
目前还没有简单的方法。如果您愿意,可以单独拨打plot
。
在版本1.4中,您可以说:
fig, ax = plt.subplots()
ax.boxplot(data, ...) # normal boxplots
ax.boxplot(data, whis=[45,55], showboxes=False, showmedians=False, showfliers=False)
第二个命令只会绘制第45和第55百分位的胡须。
如果不是您的意思,您就可以使用matplotlib.cbook.boxplot_stats(data)
获取一个dictonaries列表。您可以修改这些词典的胡须元素,并将最终版本提供给ax.bxp
。
fig, ax = plt.subplots()
stats = matplotlib.cbook.boxplot_stats(data)
for s in stats:
s['whislo'] = s['med'] * 0.95
s['whishi'] = s['med'] * 1.05
ax.bxp(stats)
注意:在这两种情况下,仍然会分别从下部和上部晶须的第一和第三四分位数开始绘制晶须。换句话说,他们将面对向内。