如何在 Seaborn 的同一个 catplot 上显示 kind="swarm" 和 kind="point" ?

How can I display kind="swarm" and kind="point" on the same catplot in Seaborn?

我试图在 Seaborn 的同一个 catplot 上显示均值和错误 (kind="point") 以及单个数据点 (kind="swarm")。

我有以下代码:

sns.catplot(x="Variable_A", y="Dependent_Variable", col="Variable_B", data=LRP_df, kind="swarm", color = "black")

sns.catplot(x="Variable_A", y="Dependent_Variable", col="Variable_B", data=LRP_df, kind="point", color = "red")

sns.despine()

分别生成图:

如何让这两个图位于同一轴上?

谢谢!

使用面部网格,您可以通过使用 map_dataframe() 指定每个来叠加每个。此 official reference 中的示例已被修改。数据基于样本数据。

import seaborn as sns

sns.set_theme(style="ticks")
exercise = sns.load_dataset("exercise")

g = sns.FacetGrid(exercise, col="kind")
g.map_dataframe(sns.stripplot, x="time", y="pulse", color="black")
g.map_dataframe(sns.pointplot, x="time", y="pulse", color="red")
g.set_axis_labels("time", "pulse")