seaborn.pairplot#
- seaborn.pairplot(data, *, hue=None, hue_order=None, palette=None, vars=None, x_vars=None, y_vars=None, kind='scatter', diag_kind='auto', markers=None, height=2.5, aspect=1, corner=False, dropna=False, plot_kws=None, diag_kws=None, grid_kws=None, size=None)#
绘制数据集中的成对关系。
默认情况下,此函数将创建一个 Axes 网格,使得
data
中的每个数值变量在同一行上共享 y 轴,并在同一列上共享 x 轴。对角线上的图以不同的方式处理:绘制了一个单变量分布图,以显示每一列数据边缘分布。还可以显示一个变量子集,或在行和列上绘制不同的变量。
这是一个针对
PairGrid
的高级接口,旨在简化一些常见样式的绘制。如果您需要更多灵活性,请直接使用PairGrid
。- 参数:
- data
pandas.DataFrame
整齐的(长格式)数据帧,其中每一列都是一个变量,每一行都是一个观测值。
- hue
data
中的变量名 data
中的变量,用于将绘图方面映射到不同的颜色。- hue_order字符串列表
调色板中调色变量级别的顺序
- palette字典或 seaborn 调色板
用于映射
hue
变量的颜色集。如果为字典,则键应该是hue
变量中的值。- vars变量名列表
要使用的
data
中的变量,否则使用具有数值数据类型的每一列。- {x, y}_vars变量名列表
要分别用于图形行和列的
data
中的变量;例如,要创建一个非方形绘图。- kind{‘scatter’, ‘kde’, ‘hist’, ‘reg’}
要绘制的图类型。
- diag_kind{‘auto’, ‘hist’, ‘kde’, None}
对角线子图的图类型。如果为 ‘auto’,则根据是否使用
hue
进行选择。- markers单个 matplotlib 标记代码或列表
用于所有散点图点的标记,或一个与调色变量级别数量相同的标记列表,以便不同颜色的点也有不同的散点图标记。
- height标量
每个小面的高度(以英寸为单位)。
- aspect标量
纵横比 * 高度给出每个小面的宽度(以英寸为单位)。
- corner布尔值
如果为 True,则不向网格的顶部(非对角线)三角形添加轴,从而使其成为一个“角点”图。
- dropna布尔值
在绘制之前从数据中删除缺失值。
- {plot, diag, grid}_kws字典
关键字参数字典。
plot_kws
传递给二元绘制函数,diag_kws
传递给单变量绘制函数,grid_kws
传递给PairGrid
构造函数。
- data
- 返回:
示例
最简单的调用使用
scatterplot()
针对变量的每个组合,并使用histplot()
针对对角线上的边缘图penguins = sns.load_dataset("penguins") sns.pairplot(penguins)
分配一个
hue
变量添加语义映射,并将默认边缘图更改为分层核密度估计 (KDE)sns.pairplot(penguins, hue="species")
可以强制使用边缘直方图
sns.pairplot(penguins, hue="species", diag_kind="hist")
kind
参数决定对角线和非对角线上的绘制样式。提供了多个选项,包括使用kdeplot()
绘制 KDEsns.pairplot(penguins, kind="kde")
或
histplot()
绘制二元和单变量直方图sns.pairplot(penguins, kind="hist")
markers
参数在非对角线轴上应用样式映射。目前,它与hue
变量是冗余的sns.pairplot(penguins, hue="species", markers=["o", "s", "D"])
与其他图形级函数一样,图形的大小通过设置每个子图的
height
来控制sns.pairplot(penguins, height=1.5)
使用
vars
或x_vars
和y_vars
选择要绘制的变量sns.pairplot( penguins, x_vars=["bill_length_mm", "bill_depth_mm", "flipper_length_mm"], y_vars=["bill_length_mm", "bill_depth_mm"], )
设置
corner=True
以仅绘制下三角形sns.pairplot(penguins, corner=True)
参数
plot_kws
和diag_kws
接受关键字参数字典,分别用于自定义非对角线和对角线绘图sns.pairplot( penguins, plot_kws=dict(marker="+", linewidth=1), diag_kws=dict(fill=False), )
返回值对象是底层的
PairGrid
,可用于进一步自定义绘图g = sns.pairplot(penguins, diag_kind="kde") g.map_lower(sns.kdeplot, levels=4, color=".2")