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()

輸出

Seaborn.pairplot() method

示例 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()

輸出

獲得的輸出如下所示:

pairplot method

示例 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()

輸出

獲得的輸出如下所示:

pairplot method
seaborn_multi_plot_grids_introduction.htm
廣告

© . All rights reserved.