如何使用Seaborn为小提琴图添加标签

时间:2017-06-27 20:15:23

标签: python pandas seaborn violin-plot

我正试图用Seaborn标记小提琴情节:

ax = sns.violinplot(x='distance', y='Length', data=class_A, scale= 'count')

sns.violinplot without hue set

当我添加hue='population'时,我想用每个小提琴情节标注,我丢失了我的KDE,它只显示了箱形​​图。

With Hue

知道为什么会这样吗?有没有建议按列标记每个小提琴图?

1 个答案:

答案 0 :(得分:0)

我相信您的数据具有从distancepopulation的一对一映射。当您添加hue时,seaborn正在尝试为每个population的每个距离制作一个小提琴图。根据您的数据,这将是大约400个小提琴图。问题是由于一对一的映射,这些组合中只有20个具有任何数据。因此,使用hue没有意义。

但是,您可以更改绘图中的x标签,以便用这样的方式显示距离和人口。

df_labels = class_A[['distance', 'population']].sort_values('distance').drop_duplicates()
new_labels = df_labels.distance + ' \n' + df_labels.population
ax.set_xticklabels(new_labels)