Python 如何在seaborn中设置除了主对角线以外的点的颜色?

Python 如何在seaborn中设置除了主对角线以外的点的颜色?,python,matplotlib,seaborn,Python,Matplotlib,Seaborn,该图(图1)是iris数据集上的成对散点图。对角线绘制了4个特征的边缘直方图 我试图用Python重现这个图 这是密码 >>> import numpy as np, pandas as pd; np.random.seed(0) >>> import seaborn as sns; sns.set(style="white", color_codes=True) >>> iris = sns.load_dataset("iris") &g

该图(图1)是iris数据集上的成对散点图。对角线绘制了4个特征的边缘直方图

我试图用Python重现这个图

这是密码

>>> import numpy as np, pandas as pd; np.random.seed(0)
>>> import seaborn as sns; sns.set(style="white", color_codes=True)
>>> iris = sns.load_dataset("iris")
>>> g = sns.pairplot(iris, vars = iris.columns[0:4] , diag_kind = 'hist')
输出(图2)为

如何设置除主对角线以外的点的颜色,如图1所示


我还尝试了将主对角线着色的
色调
选项,这就是为什么我说“主对角线除外”。

基于@ImportanceOfBeingErnest注释:

g = sns.PairGrid(iris)
g = g.map_diag(plt.hist)
g = g.map_offdiag(sns.scatterplot, hue=iris['species'])
输出:


试试这个,
sns.pairplot(iris,hue=“species”,diag\u kws=dict(color=“b”)


diag_kws仅将值应用于对角线图

检查
PairGrid
。仅对非对角线使用
hue