Seaborn:如何创建多列箱线图
您可以在 Seaborn 中使用以下基本语法来创建 pandas DataFrame 的多列箱线图:
sns. boxplot (x=' variable ', y=' value ', data=df)
以下示例展示了如何在实践中使用此语法。
示例:使用 Seaborn 绘制多列箱线图
假设我们有以下 pandas DataFrame,显示三个不同篮球队球员的得分:
import pandas as pd #createDataFrame df = pd. DataFrame ({' A ': [5, 7, 7, 9, 12, 12], ' B ': [8, 8, 9, 13, 15, 17], ' C ': [1, 2, 2, 4, 5, 7]}) #view DataFrame df A B C 0 5 8 1 1 7 8 2 2 7 9 2 3 9 13 4 4 12 15 5 5 12 17 7
假设我们要创建三个箱线图来显示每支球队的得分分布。
要在seaborn中创建多个箱线图,您必须首先将pandas DataFrame合并为长格式:
#melt data frame into long format
df_melted = pd. melt (df)
#view first 10 rows of melted data frame
df_melted. head ( 10 )
variable value
0 to 5
1 to 7
2 to 7
3 to 9
4 to 12
5 to 12
6 B 8
7 B 8
8 B 9
9 B 13
我们现在可以使用seaborn创建多个箱线图:
import matplotlib. pyplot as plt
import seaborn as sns
#create seaborn boxplots by group
sns. boxplot (x=' variable ', y=' value ', data=df_melted)
x 轴显示球队,y 轴显示得分分布。
import matplotlib. pyplot as plt
import seaborn as sns
#create seaborn boxplots by group
sns. boxplot (x=' variable ', y=' value ', data=df_melted). set (title=' Points by Team ')
#modify axis labels
plt. xlabel ('Team')
plt. ylabel ('Points')
其他资源
以下教程解释了如何在seaborn中创建其他常见的可视化: