# seaborn.pairplot
> 译者:[cancan233](https://github.com/cancan233)
```py
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, dropna=True, plot_kws=None, diag_kws=None, grid_kws=None, size=None)
```
绘制数据集中的成对关系
默认情况下,此函数将创建一个 Axes 网络,以便`data`中的每个变量将在 y 轴上共享一行,并在 x 轴上共享一列。对角轴的处理方式并不同,以此绘制一个图表来显示该列中变量的数据的单变量分布。
还可以显示变量的子集或在行和列上绘制不同的变量。
这是[`PairGrid`](seaborn.PairGrid.html#seaborn.PairGrid "seaborn.PairGrid")的高级界面,旨在简化一些常见的样式。如果你需要更多的灵活性,你应该直接使用[`PairGrid`](seaborn.PairGrid.html#seaborn.PairGrid "seaborn.PairGrid")。
参数:`data`:数据框架
> 整洁(长形式)数据框,其中每列是变量,每行是观察量。
`hue`:字符串(变量名),可选。
> `data`中的变量将绘图方面映射到不同的颜色。
`hue_order`:字符串列表。
> 命令调色板中的色调变量的级别。
`palette`:字典或 seaborn 调色板。
> 用于映射`hue`变量的颜色集。如果是字典,关键字应该是`hue`变量中的值。
`vars`:变量名列表,可选。
> 要使用的`data`中的变量,否则每一列使用数字的数据类型。
`{x, y}_vars`:变量名列表,可选。
> `data`中的变量分别用于图的行和列;即制作非方形图。
`kind`:{‘scatter’, ‘reg’}, 可选。
> 一种非等同关系的图类型
`diag_kind`:{‘auto’, ‘hist’, ‘kde’}, 可选
> 对角线子图的一种图形。默认值取决于是否使用`hue`。
`markers`:单个 matplotlit 标记代码或列表,可选
> 要么是用于所有数据点的标记,要么是长度和色调变量中的级别数相同的标记列表,这样不同颜色的点也会有不同的散点图标记。
`height`:标量,可选。
> 每个刻面的高度(以英寸为单位)
`aspect`:标量,可选。
> Aspect\*height 给出每个刻面的宽度(以英寸为单位)
`dropna`:布尔值,可选。
> 在绘图之前删除数据中的缺失值。
`{plot, diag, grid}_kws`:字典,可选。
> 关键字参数的字典。
返回值:`grid`:PairGrid
> 返回底层的`PairGrid`实例以进一步调整。
也可以看看
子图网络可以更灵活地绘制成对关系。
范例
绘制联合关系地散点图和单变量分布的直方图:
```py
>>> import seaborn as sns; sns.set(style="ticks", color_codes=True)
>>> iris = sns.load_dataset("iris")
>>> g = sns.pairplot(iris)
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-1.png](https://img.kancloud.cn/09/00/0900b925f09bccd87ff25cd04e1c9daf_900x900.jpg)
通过绘图元素的颜色显示分类变量的不同级别:
```py
>>> g = sns.pairplot(iris, hue="species")
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-2.png](https://img.kancloud.cn/c1/2a/c12ae834ddabfea4f3347b4db959b8b2_1008x900.jpg)
使用不同的调色板:
```py
>>> g = sns.pairplot(iris, hue="species", palette="husl")
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-3.png](https://img.kancloud.cn/c7/91/c791480f3ecb57df547b0448928966d0_1008x900.jpg)
为`hue`变量的每个级别使用不同的标记:
```py
>>> g = sns.pairplot(iris, hue="species", markers=["o", "s", "D"])
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-4.png](https://img.kancloud.cn/77/52/77521128e9065e9661947ed22465541a_1008x900.jpg)
绘制变量的子集:
```py
>>> g = sns.pairplot(iris, vars=["sepal_width", "sepal_length"])
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-5.png](https://img.kancloud.cn/af/91/af91f5c74ac9f3004db447376566110d_450x450.jpg)
绘制更大的图:
```py
>>> g = sns.pairplot(iris, height=3,
... vars=["sepal_width", "sepal_length"])
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-6.png](https://img.kancloud.cn/8e/df/8edf06cb21c67ab0f195e264ffde1179_540x540.jpg)
在行和列中绘制不同的变量:
```py
>>> g = sns.pairplot(iris,
... x_vars=["sepal_width", "sepal_length"],
... y_vars=["petal_width", "petal_length"])
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-7.png](https://img.kancloud.cn/b3/10/b3107f9c918dec14a6a5bf7d56fb47f9_450x450.jpg)
对单变量图使用核密度估计:
```py
>>> g = sns.pairplot(iris, diag_kind="kde")
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-8.png](https://img.kancloud.cn/4d/65/4d650436a277919a9cf62f5c5e3e6f58_900x900.jpg)
将线性回归模型拟合到散点图:
```py
>>> g = sns.pairplot(iris, kind="reg")
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-9.png](https://img.kancloud.cn/1c/02/1c02f5aa69fe0b5d03f627f816ef1f2b_900x900.jpg)
将关键字参数传递给底层函数(直接使用[`PairGrid`](seaborn.PairGrid.html#seaborn.PairGrid "seaborn.PairGrid")可能更容易)
```py
>>> g = sns.pairplot(iris, diag_kind="kde", markers="+",
... plot_kws=dict(s=50, edgecolor="b", linewidth=1),
... diag_kws=dict(shade=True))
```
![http://seaborn.pydata.org/_images/seaborn-pairplot-10.png](https://img.kancloud.cn/96/77/96774109a12894dd18bc5df644293550_900x900.jpg)
- seaborn 0.9 中文文档
- Seaborn 简介
- 安装和入门
- 可视化统计关系
- 可视化分类数据
- 可视化数据集的分布
- 线性关系可视化
- 构建结构化多图网格
- 控制图像的美学样式
- 选择调色板
- seaborn.relplot
- seaborn.scatterplot
- seaborn.lineplot
- seaborn.catplot
- seaborn.stripplot
- seaborn.swarmplot
- seaborn.boxplot
- seaborn.violinplot
- seaborn.boxenplot
- seaborn.pointplot
- seaborn.barplot
- seaborn.countplot
- seaborn.jointplot
- seaborn.pairplot
- seaborn.distplot
- seaborn.kdeplot
- seaborn.rugplot
- seaborn.lmplot
- seaborn.regplot
- seaborn.residplot
- seaborn.heatmap
- seaborn.clustermap
- seaborn.FacetGrid
- seaborn.FacetGrid.map
- seaborn.FacetGrid.map_dataframe
- seaborn.PairGrid
- seaborn.PairGrid.map
- seaborn.PairGrid.map_diag
- seaborn.PairGrid.map_offdiag
- seaborn.PairGrid.map_lower
- seaborn.PairGrid.map_upper
- seaborn.JointGrid
- seaborn.JointGrid.plot
- seaborn.JointGrid.plot_joint
- seaborn.JointGrid.plot_marginals
- seaborn.set
- seaborn.axes_style
- seaborn.set_style
- seaborn.plotting_context
- seaborn.set_context
- seaborn.set_color_codes
- seaborn.reset_defaults
- seaborn.reset_orig
- seaborn.set_palette
- seaborn.color_palette
- seaborn.husl_palette
- seaborn.hls_palette
- seaborn.cubehelix_palette
- seaborn.dark_palette
- seaborn.light_palette
- seaborn.diverging_palette
- seaborn.blend_palette
- seaborn.xkcd_palette
- seaborn.crayon_palette
- seaborn.mpl_palette
- seaborn.choose_colorbrewer_palette
- seaborn.choose_cubehelix_palette
- seaborn.choose_light_palette
- seaborn.choose_dark_palette
- seaborn.choose_diverging_palette
- seaborn.load_dataset
- seaborn.despine
- seaborn.desaturate
- seaborn.saturate
- seaborn.set_hls_values