减少Seaborn KDE绘图余量

时间:2018-10-03 14:49:35

标签: python matplotlib charts seaborn

您好,我在下面的代码中在联合图的边缘生成了多个KDE图

h = sns.JointGrid('SECS', 'EPOCH', df)

for name, group in df.groupby("QUERY"):
    sns.kdeplot(group["SECS"], ax=h.ax_marg_x, legend=False)
    sns.kdeplot(group["EPOCH"], ax=h.ax_marg_y, vertical=True, legend=False)
    h.ax_joint.plot(group["SECS"], group["EPOCH"], ".", ms=5)

enter image description here

我想知道如何限制边距,以便图形从0开始而不是从-20000开始,那里有很多死角。

1 个答案:

答案 0 :(得分:1)

您可以使用JointGrid访问ax_joint的主图,就像首先绘制数据一样。如果打印h.ax_joint类型,则可以看到它是matplotlib.axes._subplots.AxesSubplot。因此,您可以像通常使用matplotlib一样操纵轴的极限。

例如:

h = sns.JointGrid('SECS', 'EPOCH', df)

for name, group in df.groupby("QUERY"):
    sns.kdeplot(group["SECS"], ax=h.ax_marg_x, legend=False)
    sns.kdeplot(group["EPOCH"], ax=h.ax_marg_y, vertical=True, legend=False)
    h.ax_joint.plot(group["SECS"], group["EPOCH"], ".", ms=5)

h.ax_joint.set_xlim(0,90000)