对于一列数据帧,我在sns.pairlot中使用渐变颜色,这样我就可以看到哪些数据点相互连接了 [英] Have gradient colours in sns.pairplot for one column of dataframe so that I can see which datapoints are connected to each other

查看:16
本文介绍了对于一列数据帧,我在sns.pairlot中使用渐变颜色,这样我就可以看到哪些数据点相互连接了的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我可以很容易地用以下命令生成海运配对图:

import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

f, axes = plt.subplots(1, 1)

np.random.seed(1)
a = np.arange(0, 10, 0.1)

np.random.rand()

def myFunc(x):
    myReturn = x + 1*np.random.random(x.shape[0])
    return myReturn

b = myFunc(a)
c = a * np.sin(a)

df = pd.DataFrame({'a': a, 'b': b, 'c': c})

sns.pairplot(df, corner=True)
plt.show()

我希望更轻松地查看我的数据之间的相互依赖关系。

为此,我希望DataFrame的一列具有渐变颜色(以便该列的低位数值为黄色,高位数值为蓝色)。

根据a的数据点,我的绘图的所有非对角线子图都应该显示这些颜色,请参见下面的草图。

这对[a,b]和[a,c]绘图的好处是有限的,但是对于[b,c]绘图,如果数据变得更加复杂,我希望得到更多的见解。

此操作的语法如何?

推荐答案

我认为这里更简单的做法是将数据帧索引作为色调变量传递。由于您不想(天真地)应用于直方图,请将其直接传递给非对角线图:

sns.pairplot(
    df,
    corner=True,
    diag_kws=dict(color=".6"),
    plot_kws=dict(
        hue=df.index,
        palette="blend:gold,dodgerblue",
    ),
)

这篇关于对于一列数据帧,我在sns.pairlot中使用渐变颜色,这样我就可以看到哪些数据点相互连接了的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆