修改Seaborn小提琴图以显示均值

时间:2020-02-11 14:31:42

标签: python pandas matplotlib seaborn

当前正在显示Seaborn / Pandas的一些数据。我想覆盖每个类别的平均值(x = ks2)-但无法弄清楚如何使用Seaborn。

我可以删除inner =“ box”-但想用一个标记来代替每个类别的均值。

理想情况下,然后链接计算出的每个均值...

任何指针都收到了。 干杯

Science.csv的条目超过9k

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt

sns.set(style="whitegrid", palette="pastel", color_codes=True)

# Load the dataset
# df = pd.read_csv("science.csv")  << loaded from csv

df = pd.DataFrame({'ks2': [1, 1, 2,3,3,4], 
                   'science': [40, 50, 34,20,0,44]})


# Draw a nested violinplot and split the violins for easier comparison
sns.violinplot(x="ks2", y="science", data=df, split=True,
               inner="box",linewidth=2)
sns.despine(left=True)
plt.savefig('plot.png')

1 个答案:

答案 0 :(得分:2)

尝试:

from numpy import mean

然后使用estimator = mean覆盖sns.pointplot

sns.pointplot(x = 'ks2', y='science', data=df, estimator=mean)

然后使用线型播放