- Seaborn 教程
- Seaborn - 首頁
- Seaborn - 簡介
- Seaborn - 環境搭建
- 匯入資料集和庫
- Seaborn - 圖形美觀
- Seaborn - 調色盤
- Seaborn - 直方圖
- Seaborn - 核密度估計
- 視覺化成對關係
- Seaborn - 繪製分類資料
- 觀測值的分佈
- Seaborn - 統計估計
- Seaborn - 繪製寬格式資料
- 多面板分類圖
- Seaborn - 線性關係
- Seaborn - Facet Grid
- Seaborn - Pair Grid
- 函式參考
- Seaborn - 函式參考
- Seaborn 有用資源
- Seaborn - 快速指南
- Seaborn - 有用資源
- Seaborn - 討論
Seaborn.pairplot() 方法
Seaborn.pairplot() 方法用於繪製資料集中成對關係。預設情況下,資料集中的每個數值變數將分別沿單個行的 y 軸和單個列的 x 軸展開,這取決於此函式建立的軸網格。
對於對角線上的圖,處理方式有所不同,會建立單變數分佈圖來顯示每列資料的邊緣分佈。
此外,您可以僅顯示資料的一部分,或在不同的行和列中繪製其他變數。這個高階 PairGrid 介面旨在簡化建立一些流行樣式的操作。
語法
以下是 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)
引數
下面討論了 pairplot() 方法的一些引數。
| 序號 | 名稱和描述 |
|---|---|
| 1 | Data 接受資料框,其中每一列是一個變數,每一行是一個觀測值。 |
| 2 | hue 指定將在特定網格面上顯示的資料部分的變數。要控制此變數的級別順序,請參考 var order 引數。 |
| 3 | Kind 接受來自 {‘scatter’, ‘kde’, ‘hist’, ‘reg’} 的值,並確定要建立的繪圖型別。 |
| 4 | Diag_kind 接受來自 {‘auto’, ‘hist’, ‘kde’, None} 的值,如果使用,則確定對角線子圖的繪圖型別。如果為 ‘auto’,則根據是否使用 hue 來選擇。 |
| 5 | Height 接受標量值,並確定面的高度。 |
| 6 | Aspect 接受標量值,每個面的縱橫比,因此 aspect * height 給出每個面的寬度(以英寸為單位)。 |
| 7 | corner 接受布林值,如果為 True,則不向網格的上三角(非對角線)新增軸,使其成為“角”圖。 |
| 8 | hue_order 接受列表作為輸入,並由此順序確定分面變數級別的順序。 |
在繼續繪製之前,讓我們載入 seaborn 庫和資料集。
載入 seaborn 庫
要載入或匯入 seaborn 庫,可以使用以下程式碼行。
Import seaborn as sns
載入資料集
在本文中,我們將使用 seaborn 庫中內建的 exercise 資料集。以下命令用於載入資料集。
exercise =sns.load_dataset("exercise")
以下命令用於檢視資料集中前 5 行。這使我們能夠了解可以使用哪些變數來繪製圖形。
exercise.head()
以下是上述程式碼段的輸出。
index,Unnamed: 0,id,diet,pulse,time,kind 0,0,1,low fat,85,1 min,rest 1,1,1,low fat,85,15 min,rest 2,2,1,low fat,88,30 min,rest 3,3,2,low fat,90,1 min,rest 4,4,2,low fat,92,15 min,rest
現在我們已經載入了資料集,我們將探索一些示例。
示例 1
我們將首先呼叫 pairplot() 方法並將資料框傳遞給它。這將產生多個圖,如下所示。
import seaborn as sns
import matplotlib.pyplot as plt
exercise =sns.load_dataset("exercise")
exercise.head()
sns.pairplot(exercise)
plt.show()
輸出
示例 2
在這個示例中,我們將與 dataframe 一起將一些其他引數傳遞給 pairplto() 方法。由於我們使用的是 exercise 資料集,因此我們將使用 diet 分類列並將其傳遞給 hue 資料集,我們將繪製本質上是直方圖的圖形,這就是為什麼 diag_kind 引數傳遞 hist 值的原因。
import seaborn as sns
import matplotlib.pyplot as plt
exercise =sns.load_dataset("exercise")
exercise.head()
sns.pairplot(exercise, hue="diet", diag_kind="hist")
plt.show()
輸出
獲得的輸出如下所示:
示例 3
在這個示例中,我們將瞭解 map_lower() 函式的使用。我們將 pairplot 儲存到變數 g 中,然後將 map_lower 函式應用於它。因此,基本上,對於存在的每個唯一的 hue 值,都會執行傳遞給 map.lower 的 func(對於每個變數)。當沒有給出 hue 時,該函式將只在所有相關資料上執行一次(對於每個變數)。
import seaborn as sns
import matplotlib.pyplot as plt
exercise =sns.load_dataset("exercise")
exercise.head()
g = sns.pairplot(exercise, diag_kind="kde")
g.map_lower(sns.kdeplot, levels=4, color=".8")
plt.show()
輸出
獲得的輸出如下所示: