# seaborn.PairGrid
> 譯者:[sfw134](https://github.com/sfw134)
```py
class seaborn.PairGrid(data, hue=None, hue_order=None, palette=None, hue_kws=None, vars=None, x_vars=None, y_vars=None, diag_sharey=True, height=2.5, aspect=1, despine=True, dropna=True, size=None)
```
用于繪制數據集中成對關系的子圖網格。
此類將數據集中的每個變量映射到多個軸的網格中的列和行。可以使用不同的軸級繪圖函數來繪制上三角和下三角的雙變量圖,并且對角線上可以顯示每個變量的邊際分布。
它還可以通過`hue`參數用不同顏色繪制不同的數據子集來表示附加級別的條件化。這使用顏色來解析第三維的元素,但只是在彼此之上繪制子集,并且不會像接受`hue`的軸級函數那樣為特定可視化定制`hue`參數。
參考[教程](http://seaborn.pydata.org/tutorial/axis_grids.html#grid-tutorial)獲取更多信息。
```py
__init__(data, hue=None, hue_order=None, palette=None, hue_kws=None, vars=None, x_vars=None, y_vars=None, diag_sharey=True, height=2.5, aspect=1, despine=True, dropna=True, size=None)
```
初始化繪圖和 PairGrid 對象。
參數:`data`:DataFrame 格式
> 整潔(長形式)數據框,其中每列是一個變量,每行是一個觀察。
`hue`:字符串 (變量名), 可選
> `data`中的變量,將繪圖的不同面映射為不同的顏色。
`hue_order`:字符串列表
> 調色板中色調變量的等級順序
`palette`:字典或者 seaborn 調色板
> 用于映射`hue`變量的顏色集.如果是一個字典,鍵應為`hue`變量中的值。
`hue_kws`:參數字典 -> 值列表映射
> 其它的關鍵字參數,通過插入到繪圖調用中使得其它的繪圖屬性在色調變量的不同水平上變化(例如散點圖中的標記)。
`vars`:變量名列表, 可選
> 使用`data`中的變量,否則使用一個數值型數據類型的每一列。
`{x, y}_vars`:變量名列表,可選
> 將`data`中的變量分別用于圖的行和列,即制作非方形圖。
`height`:標量,可選
> 每個刻面的高度(以英寸為單位)。
`aspect`:標量,可選
> aspect 和 height 的乘積得出每個刻面的寬度(以英寸為單位)。
`despine`:布爾值,可選
> 從圖中移除頂部和右側脊柱。
`dropna`:布爾值,可選
> 在繪圖之前刪除數據中的缺失值。
另見
輕松繪制[`PairGrid`](#seaborn.PairGrid "seaborn.PairGrid")的常用用法。用于繪制條件關系的子圖網格。
例子
為每個成對關系繪制一個散點圖:
```py
>>> import matplotlib.pyplot as plt
>>> import seaborn as sns; sns.set()
>>> iris = sns.load_dataset("iris")
>>> g = sns.PairGrid(iris)
>>> g = g.map(plt.scatter)
```

在對角線上顯示單變量分布:
```py
>>> g = sns.PairGrid(iris)
>>> g = g.map_diag(plt.hist)
>>> g = g.map_offdiag(plt.scatter)
```

(實際上沒有必要每次都獲取返回值,因為它是同一個對象,但它使得更容易處理文檔測試)。
使用分類變量對點進行著色:
```py
>>> g = sns.PairGrid(iris, hue="species")
>>> g = g.map_diag(plt.hist)
>>> g = g.map_offdiag(plt.scatter)
>>> g = g.add_legend()
```

使用不同的樣式顯示多個直方圖:
```py
>>> g = sns.PairGrid(iris, hue="species")
>>> g = g.map_diag(plt.hist, histtype="step", linewidth=3)
>>> g = g.map_offdiag(plt.scatter)
>>> g = g.add_legend()
```

繪制變量的子集
```py
>>> g = sns.PairGrid(iris, vars=["sepal_length", "sepal_width"])
>>> g = g.map(plt.scatter)
```

將其它關鍵字參數傳給函數。
```py
>>> g = sns.PairGrid(iris)
>>> g = g.map_diag(plt.hist, edgecolor="w")
>>> g = g.map_offdiag(plt.scatter, edgecolor="w", s=40)
```

對行和列使用不同的變量:
```py
>>> g = sns.PairGrid(iris,
... x_vars=["sepal_length", "sepal_width"],
... y_vars=["petal_length", "petal_width"])
>>> g = g.map(plt.scatter)
```

在上三角和下三角使用不同的函數:
```py
>>> g = sns.PairGrid(iris)
>>> g = g.map_upper(plt.scatter)
>>> g = g.map_lower(sns.kdeplot, cmap="Blues_d")
>>> g = g.map_diag(sns.kdeplot, lw=3, legend=False)
```

為每個分類級別使用不同的顏色和標記:
```py
>>> g = sns.PairGrid(iris, hue="species", palette="Set2",
... hue_kws={"marker": ["o", "s", "D"]})
>>> g = g.map(plt.scatter, linewidths=1, edgecolor="w", s=40)
>>> g = g.add_legend()
```

方法
| [`__init__`](#seaborn.PairGrid.__init__ "seaborn.PairGrid.__init__")(data[, hue, hue_order, palette, …]) | 初始化繪圖和 PairGrid 對象。 |
| `add_legend`([legend_data,?title,?label_order]) | 繪制一個圖例,可能將其放在軸外并調整圖形大小。 |
| [`map`](seaborn.PairGrid.map.html#seaborn.PairGrid.map "seaborn.PairGrid.map")(func, **kwargs) | 在每一個子圖上用相同的函數繪制。 |
| [`map_diag`](seaborn.PairGrid.map_diag.html#seaborn.PairGrid.map_diag "seaborn.PairGrid.map_diag")(func, **kwargs) | 在每個對角線子圖上用一個單變量函數繪制。 |
| [`map_lower`](seaborn.PairGrid.map_lower.html#seaborn.PairGrid.map_lower "seaborn.PairGrid.map_lower")(func, **kwargs) | 在下三角子圖上用一個雙變量函數繪制。|
| [`map_offdiag`](seaborn.PairGrid.map_offdiag.html#seaborn.PairGrid.map_offdiag "seaborn.PairGrid.map_offdiag")(func, **kwargs) | 在非對角線子圖上用一個雙變量函數繪制。 |
| [`map_upper`](seaborn.PairGrid.map_upper.html#seaborn.PairGrid.map_upper "seaborn.PairGrid.map_upper")(func, **kwargs) | 在上三角子圖上用一個雙變量函數繪制。|
| `savefig`(*args, **kwargs) | 保存圖。 |
| `set`(**kwargs) | 在每個子圖軸上設置屬性。 |
- 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