互相堆叠多个seaborn.catplot

时间:2018-09-29 23:16:00

标签: matplotlib seaborn

我有多个使用Seaborn的不同FacetGrid图(来自无法合并的不同数据框)。

每个图是

g = sns.catplot(x="type", y=outcome, 
                        hue="team",
                        order=types
                        ,ci=68.2,
                        kind="point",aspect=1.3,
                        data=df_temp)

这将给我6个图(仅显示两个图) enter image description here enter image description here

我想将它们堆叠在一起,以便在同一把斧头上同时绘制HH和MH值的单个图。要获得这样的东西: enter image description here

我尝试在循环外使用fig = plt.figure(),然后在循环内使用fig.axes.append(g.ax)(在6个数据帧上),但是没有成功(我在图轴中得到一个空数组)< / p>

有办法吗?

1 个答案:

答案 0 :(得分:2)

尝试通过轴axcatplot不接受ax参数。

编辑:根据您自己的建议,pointplot在传递轴实例ax时有效。

fig = plt.figure(figsize=(8,6))
ax = fig.add_subplot(111)

g = sns.pointplot(x="type", y=outcome, hue="team", order=types, 
                  ci=68.2,data=df_temp, ax=ax)