我正在尝试用seaborn.catplot
替换seaborn.facetgrid
。但是seaborn.catplot
没有正确标记Embarked = C
面中的色调
数据集:泰坦尼克号
e = sns.FacetGrid(data= train_df, col='Embarked')
e.map_dataframe(sns.pointplot, 'Pclass', 'Survived', hue='Sex', palette='deep')
e.add_legend()
C:男性正确地呈现为色调
但是我的seaborn.catplot
显示:
sns.catplot(x='Pclass', y= 'Survived', hue='Sex', data=train_df, kind='point', col='Embarked')
C: 男性未正确呈现为色调
谢谢你,约翰。是的,我的计划错了。我手动检查过了
输出:
雌性比雄性大。 在
FacetGrid
中hue_order
应该指定,否则可能会给出错误的结果约翰在评论中已经对答案进行了嘲弄。我只想解释和完成
以下是
seaborn.catplot
的documentation关于排序的说明:这意味着您可以使用
hue_order
参数来确保绘图的顺序符合您的要求:以下是如何在您的案例中使用它:
或者,正如文档中所描述并由JohanC指出的,您可以将列
train_df['Sex']
的类型转换为分类类型。然后通过seaborn
推断顺序相关问题 更多 >
编程相关推荐