Seaborn - FacetGrid轴在行/ y轴上跨列共享x轴

mga*_*gab 5 python matplotlib seaborn

FacetGridfrom seaborn创建一个子网格,允许您探索数据集中的条件关系.

函数接受的两个关键字参数是sharexsharey,根据文档:

分享{x,y}:bool,可选

如果为true,则facet将跨行跨越列和/或x轴共享y轴.

但我没有看到任何其他方法来控制facets/subplots共享轴的方式.所以这里......

题:

有没有办法跨行和/或y轴跨行共享x轴?

我正在尝试获得不同条件(列和色调)的不同数量(行数)的密度图.因此,我希望我的子图可以跨行共享x轴和y轴,但不会跨列链接.

mwa*_*kom 15

它没有正确记录,但这些参数直接传递给plt.subplots,这允许您将这些参数的值设置为"row"或者"col"使轴仅在行或列中共享,而不是在整个网格中共享.

我不确定我到底想要你的情节看起来如何,但我认为你可以这样做:

tips = sns.load_dataset("tips")
g = sns.FacetGrid(tips, col="smoker", row="time", sharey="col")
g.map(plt.hist, "total_bill")
Run Code Online (Sandbox Code Playgroud)

也就是说,一般情况下,我会尝试在网格上共享轴(即,构建绘图以跨行而不是跨列共享y轴)以简化视觉比较.