Seaborn:如何在箱线图上显示平均值
您可以使用showmeans参数来显示使用 seaborn 创建的箱线图中的平均值:
sns. boxplot (data=df, x=' x_var ', y=' y_var ', showmeans= True )
以下示例展示了如何在实践中使用此语法。
示例:在 Seaborn Boxplot 上显示平均值
假设我们有以下 pandas DataFrame,显示来自三个不同球队的篮球运动员的得分:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C', 'C'], ' points ': [3, 4, 6, 8, 9, 10, 13, 16, 18, 20, 8, 9, 12, 13, 15]}) #view head of DataFrame print ( df.head ()) team points 0 to 3 1 to 4 2 to 6 3 to 8 4 to 9
我们可以使用以下代码创建箱线图来可视化每个团队的得分分布:
import seaborn as sns
#create boxplot to visualize distribution points by team
sns. boxplot (data=df, x=' team ', y=' points ')
默认情况下,箱线图使用每个箱线图内的水平线显示中值。
要显示每个箱线图的平均值,您必须指定showmeans=True :
import seaborn as sns
#create boxplot to visualize points distribution by team (and display mean values)
sns. boxplot (data=df, x=' team ', y=' points ', showmeans= True )
默认情况下,seaborn 使用绿色三角形来显示每个箱线图的平均值。
要自定义平均值的外观,请随意使用Meanprops参数:
import seaborn as sns
#create boxplot to visualize distribution points by team
sns. boxplot (data=df, x=' team ', y=' points ', showmeans= True ,
meanprops={' marker ':' o ',
' markerfacecolor ': ' white ',
' markeredgecolor ': ' black ',
' markersize ': ' 8 '})
平均值现在显示为带有黑色轮廓的白色圆圈。
请随意使用Meanprops参数值来更改箱线图中平均值的外观。
注意:您可以 在此处找到 seaborn boxplot()函数的完整文档。
其他资源
以下教程解释了如何在seaborn中执行其他常见功能:
如何在 Seaborn Boxplot 中控制颜色
如何从 Seaborn 箱线图中删除异常值
如何在 Seaborn 中对 x 轴上的箱线图进行排序