在 Pandas 中显示箱线图的组名

亚历克西斯

我有以下数据集:

df_plots = pd.DataFrame({'Group':['A','A','A','A','B','B','B','B','C','C','C','C','D','D','D','D'],\
                         'Value':[1,1.2,1.4,1.3,16,18,16,19,43,47,42,55,0.2,0.4,0.3,0.6],
                         'Hit':[1,1,1,1,2,2,2,2,2,3,4,4,5,5,1,0]})

我想按每个显示箱线图Group,并显示每个图的每个组的名称。首先,我试过这个并且工作正常:

fig, axs = plt.subplots(2,2,figsize=(8,6), sharey=False)
axs = axs.flatten()

for i, g in enumerate(df_plots[['Group','Value']].groupby('Group')):
    g[1].boxplot(ax=axs[i])

在此处输入图片说明

但是当试图显示每个箱线图的组名时,我被卡住了,不知道如何继续。这是我迄今为止尝试过的:

fig, axs = plt.subplots(2,2,figsize=(8,6), sharey=False)
axs = axs.flatten()

for i, g in enumerate(df_plots[['Group','Value']].groupby('Group')):
    g[1].boxplot(ax=axs[i])
    axs.flat[i].set_title('What goes here?')

请,任何帮助将不胜感激。

席德·费金

鉴于您的代码片段,这就是我要做的:

fig, axs = plt.subplots(2,2,figsize=(8,6), sharey=False)
axs = axs.flatten()

for i, g in enumerate(df_plots[['Group','Value']].groupby('Group')):
    g[1].boxplot(ax=axs[i])
    # g is a Tuple[<Group Name:str>, <Group Data:pd.DataFrame>] 
    axs.flat[i].set_title(g[0])
    
# Adjust padding to better accommodate box plot titles
plt.tight_layout()

结果图像

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章