matplotlib:每个类别的箱线图

4
我的Pandas数据帧有两列:categoryduration。我使用以下代码绘制所有数据点的箱线图。
import matplotlib.pyplot as plt
plt.boxplot(df.duration)
plt.show()

然而,如果我想要每个 category 都有一个盒子,我该如何修改上面的代码?谢谢!
2个回答

9
除了Wen's answer之外,你可能还想查看seaborn库。它是为了做这种图而制作的。

Seaborn是基于matplotlib的Python可视化库。它提供了一个高级接口来绘制具有吸引力的统计图形。

请查看箱线图文档

绘制一个箱线图以显示不同类别中的分布情况。

sns.boxplot(data=df, x='category', y='duration')

enter image description here


2
我们可以使用pandas来完成这项任务。
#df=pd.DataFrame({'category':list('aacde'),'duration':[1,3,2,3,4]}) sample data
df.assign(index=df.groupby('category').cumcount()).pivot('index','category','duration').plot(kind='box')

enter image description here


这个 Pandas 版本怎么添加异常值?如果不行,我们该如何在 Matplotlib 中实现? - Edamame

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接