# seaborn.relplot
> 譯者:[Stuming](https://github.com/Stuming)
```py
seaborn.relplot(x=None, y=None, hue=None, size=None, style=None, data=None, row=None, col=None, col_wrap=None, row_order=None, col_order=None, palette=None, hue_order=None, hue_norm=None, sizes=None, size_order=None, size_norm=None, markers=None, dashes=None, style_order=None, legend='brief', kind='scatter', height=5, aspect=1, facet_kws=None, **kwargs)
```
繪制相關關系圖像到 FacetGrid 的圖像級別接口。
此函數提供對一些不同軸級別函數的訪問,這些函數通過子集的語義映射顯示兩個變量之間的關系。`kind`參數選擇要使用的基礎軸級函數:
* [`scatterplot()`](seaborn.scatterplot.html#seaborn.scatterplot "seaborn.scatterplot") (通過`kind="scatter"`訪問;默認為此)
* [`lineplot()`](seaborn.lineplot.html#seaborn.lineplot "seaborn.lineplot") (通過`kind="line"`訪問)
額外的關鍵字參數會被傳遞給隱含的函數,因此使用時應當參考對應函數的文檔去了解各種選項。
對于數據不同子集的`x`與`y`的繪制關系可以通過`hue`, `size`以及`style`參數控制。這些參數控制使用哪些視覺語義來區分不同的子集。使用所有三個語義類型可以獨立展示三個維度,但是這種方式得到的繪制結果難以被理解而且低效。使用多種語義(例如對相同變量同時使用`hue`及`style`)可以使圖像更加易懂。
參考[tutorial](http://seaborn.pydata.org/tutorial/relational.html#relational-tutorial)獲得更多信息。
繪制后,會返回帶有圖像的[`FacetGrid`](seaborn.FacetGrid.html#seaborn.FacetGrid "seaborn.FacetGrid"),隨后可以直接進行圖像細節調節或者加入其他圖層。
值得注意的是,與直接使用隱含函數的方式不同,數據必須以長格式的 DataFrame 傳入,同時變量通過`x`, `y`及其他參數指定。
參數:`x, y`:`data`中的變量名
> 輸入數據的變量;數據必須為數值型。
`hue`: `data`中的名稱,可選
> 將會產生具有不同顏色的元素的變量進行分組。這些變量可以是類別變量或者數值型變量,盡管顏色映射在后面的情況中會有不同的表現。
`size`:`data`中的名稱,可選
> 將會產生具有不同尺寸的元素的變量進行分組。這些變量可以是類別變量或者數值型變量,盡管尺寸映射在后面的情況中會有不同的表現。
`style`:`data`中的名稱,可選
> 將會產生具有不同風格的元素的變量進行分組。這些變量可以為數值型,但是通常會被當做類別變量處理。
`data`:DataFrame
> 長格式的 DataFrame,每列是一個變量,每行是一個觀察值。
`row, col`:`data`中的變量名,可選
> 確定網格的分面的類別變量。
`col_wrap`:int, 可選
> 以此寬度“包裹”列變量,以便列分面跨越多行。與`row`分面不兼容。
`row_order, col_order`:字符串列表,可選
> 以此順序組織網格的行和/或列,否則順序將從數據對象中推斷。
`palette`:色盤名,列表,或者字典,可選
> 用于`hue`變量的不同級別的顏色。應當是[`color_palette()`](seaborn.color_palette.html#seaborn.color_palette "seaborn.color_palette")可以解釋的東西,或者將色調級別映射到 matplotlib 顏色的字典。
`hue_order`:列表,可選
> 指定`hue`變量層級出現的順序,否則會根據數據確定。當`hue`變量為數值型時與此無關。
`hue_norm`:元組或者 Normalize 對象,可選
> 當`hue`變量為數值型時,用于數據單元的 colormap 的標準化。如果`hue`為類別變量則與此無關。
`sizes`:列表、典或者元組,可選
> 當使用`sizes`時,用于確定如何選擇尺寸。此變量可以一直是尺寸值的列表或者`size`變量的字典映射。當`size`為數值型時,此變量也可以是指定最小和最大尺寸的元組,這樣可以將其他值標準化到這個范圍。
`size_order`:列表,可選
> 指定`size`變量層次的表現順序,不指定則會通過數據確定。當`size`變量為數值型時與此無關。
`size_norm`:元組或者 Normalize 對象,可選
> 當`size`變量為數值型時,用于數據單元的 scaling plot 對象的標準化。
`legend`:“brief”, “full”, 或者 False, 可選
> 用于決定如何繪制坐標軸。如果參數值為“brief”, 數值型的`hue`以及`size`變量將會被用等間隔采樣值表示。如果參數值為“full”, 每組都會在坐標軸中被記錄。如果參數值為“false”, 不會添加坐標軸數據,也不會繪制坐標軸。
`kind`:string, 可選
> 繪制圖的類型,與 seaborn 相關的圖一致。可選項為(`scatter`及`line`).
`height`:標量, 可選
> 每個 facet 的高度(英寸)。參見`aspect`。
`aspect`:標量, 可選
> 每個 facet 的長寬比,因此“長寬比*高度”可以得出每個 facet 的寬度(英寸)。
`facet_kws`:dict, 可選
> 以字典形式傳給[`FacetGrid`](seaborn.FacetGrid.html#seaborn.FacetGrid "seaborn.FacetGrid")的其他關鍵字參數.
`kwargs`:鍵值對
> 傳給后續繪制函數的其他關鍵字參數。
返回值:`g`:[`FacetGrid`](seaborn.FacetGrid.html#seaborn.FacetGrid "seaborn.FacetGrid")
> 返回包含圖像的[`FacetGrid`](seaborn.FacetGrid.html#seaborn.FacetGrid "seaborn.FacetGrid")對象,圖像可以進一步調整。
示例
使用[`FacetGrid`](seaborn.FacetGrid.html#seaborn.FacetGrid "seaborn.FacetGrid")的坐標軸布局繪制簡單的 facet。
```py
>>> import seaborn as sns
>>> sns.set(style="ticks")
>>> tips = sns.load_dataset("tips")
>>> g = sns.relplot(x="total_bill", y="tip", hue="day", data=tips)
```

利用其他變量繪制 facet:
```py
>>> g = sns.relplot(x="total_bill", y="tip",
... hue="day", col="time", data=tips)
```

繪制兩行兩列的 facet:
```py
>>> g = sns.relplot(x="total_bill", y="tip", hue="day",
... col="time", row="sex", data=tips)
```

將多行 facets 轉換為多列:
```py
>>> g = sns.relplot(x="total_bill", y="tip", hue="time",
... col="day", col_wrap=2, data=tips)
```

利用指定的屬性值對每個 facet 使用多種語義變量:
```py
>>> g = sns.relplot(x="total_bill", y="tip", hue="time", size="size",
... palette=["b", "r"], sizes=(10, 100),
... col="time", data=tips)
```

使用不同類型的圖:
```py
>>> fmri = sns.load_dataset("fmri")
>>> g = sns.relplot(x="timepoint", y="signal",
... hue="event", style="event", col="region",
... kind="line", data=fmri)
```

改變每個 facet 的大小:
```py
>>> g = sns.relplot(x="timepoint", y="signal",
... hue="event", style="event", col="region",
... height=5, aspect=.7, kind="line", data=fmri)
```

- 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