问题:Seaborn pairplot off-diagonal KDE with two classes

我正在尝试查看两类不同变量的 Seaborn 配对图,我希望在非对角线上看到 KDE,而不是散点图。该文档有关于如何为数据的_all_ 执行 KDE 的说明,但我想为每个数据子类查看单独的 KDE。欢迎提出建议!

我的代码看起来像这样:

plot = sns.pairplot(
    df,
    vars=labels,
    hue='has_accident',
    palette='Set1',
    diag_kind='kde',
)

这导致:

在此处输入图像描述

如您所见,数据足够密集,很难看到非对角线上的红色和蓝色数据的差异。

解答

你的意思可能是这样的:

import seaborn as sns
import matplotlib.pyplot as plt

iris = sns.load_dataset("iris")

g = sns.PairGrid(iris, hue="species", hue_kws={"cmap": ["Blues", "Greens", "Reds"]})
g = g.map_diag(sns.kdeplot, lw=3)
g = g.map_offdiag(sns.kdeplot, lw=1)

plt.show()

在此处输入图像描述

Logo

Python社区为您提供最前沿的新闻资讯和知识内容

更多推荐