Matplotlib:如何按组创建箱线图


您可以使用以下语法在 Matplotlib 中按组创建箱线图:

 import matplotlib as plt
import seaborn as sns

sns. boxplot (x=' group ', y=' values ', data=df)

以下示例演示如何使用此语法为长格式和宽格式数据集创建组箱线图。

示例 1:长数据按组绘制箱线图

以下代码显示了如何为长格式的 pandas DataFrame 按组创建箱线图:

 import pandas as pd
import numpy as np
import matplotlib as plt
import seaborn as sns

#create long-form data
df = pd. DataFrame ({' points ': [7, 8, 9, 12, 14, 5, 6, 6, 8, 11, 8, 9, 11, 13, 17],
                   ' team ': np. repeat ([' A ',' B ',' C '],5)})

#viewdata
print (df)

    team points
0 7 A
1 8 A
2 9 A
3 12 A
4 14 A
5 5 B
6 6 B
7 6 B
8 8 B
9 11 B
10 8 C
11 9 C
12 11 C
13 13 C
14 17 C

#create boxplot by group
sns. boxplot (x=' team ', y=' points ', data=df) 

按组划分的 Matplotilb 箱线图

示例 2:宽格式数据按组绘制的箱线图

以下代码显示了如何为宽格式的 pandas DataFrame 按组创建箱线图:

 import pandas as pd
import numpy as np
import matplotlib as plt
import seaborn as sns

#create wide-form data
df = pd. DataFrame ({' A ': [7, 8, 9, 12, 14],
                   ' B ': [5, 6, 6, 8, 11],
                   ' C ': [8, 9, 11, 13, 17]})

#viewdata
print (df)

    ABC
0 7 5 8
1 8 6 9
2 9 6 11
3 12 8 13
4 14 11 17

#create boxplot by group
sns. boxplot (x=' variable ', y=' value ', data= pd.melt (df)). set (
            xlabel=' team ', 
            ylabel=' points ')

按组划分的 Matplotilb 箱线图

其他资源

如何在 Matplotlib 中绘制多条线
如何在 Matplotlib 中创建堆积条形图

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注