Parplott
Pair plot används för att visualisera parvisa relationer mellan numeriska variabler i en datamängd. Det liknar ett joint plot, men är inte begränsat till endast två variabler. Ett pair plot skapar faktiskt ett NxN
rutnät av Axes
-objekt (flera delplottar) där N
är antalet numeriska variabler (numeriska kolumner i en DataFrame
).
Beskrivning av Pair Plot
I ett pair plot delar varje kolumn samma x-axel-variabel, och varje rad delar samma y-axel-variabel. Diagonalen visar histogram för individuella variabler, medan övriga plottar visar scatter plots.
Skapa ett Pair Plot
Att skapa ett pair plot med seaborn
innebär att anropa dess funktion pairplot()
. Dess viktigaste och enda obligatoriska parameter är data
, som ska vara ett DataFrame
-objekt.
import seaborn as sns import matplotlib.pyplot as plt # Loading the dataset with data about three different iris species iris_df = sns.load_dataset('iris') # Creating a pair plot sns.pairplot(iris_df, height=2, aspect=0.8) plt.show()
DataFrame:en iris_df
skickas till funktionen pairplot()
. Parametrarna height
och aspect
definierar höjden och bredden (beräknad som höjd multiplicerat med aspekt) för varje facet i tum.
Hue
En annan parameter som är värd att nämna är hue
, som specificerar variabeln (kolumnnamn) i data
för att koppla plottegenskaper till olika färger eller till och med skapa separata plottar (på en Axes
) för varje av dess värden.
import seaborn as sns import matplotlib.pyplot as plt # Ignoring warnings import warnings warnings.filterwarnings('ignore') # Loading the dataset with data about three different iris species iris_df = sns.load_dataset('iris') # Setting the hue parameter to 'species' sns.pairplot(iris_df, hue='species', height=2, aspect=0.8) plt.show()
Skillnaden är tydlig här. Datapunkterna i varje spridningsdiagram är färgade baserat på arten de tillhör, med hjälp av värdena från species-kolumnen. De diagonala diagrammen är nu KDE-diagram för varje art istället för histogram.
Vid klassificeringsproblem är det ofta lämpligt att skapa ett pair plot med hue
-parametern satt till målvariabeln, det vill säga den kategoriska variabel som ska förutsägas.
Skillnaden är tydlig. Datapunkterna i varje spridningsdiagram är färgade enligt deras art, baserat på värdena i species-kolumnen. De diagonala diagrammen har ersatts med KDE-diagram för varje art istället för histogram.
Vid klassificeringsuppgifter är det ofta användbart att skapa ett pair plot med hue
-parametern satt till målvariabeln — den kategoriska variabel som ska förutsägas.
Ändra diagramtyper
Du kan ändra typen av diagram som används istället för de förvalda spridningsdiagrammen, samt diagrammen som visas på diagonalen. Parametern kind
styr huvuddiagrammen och är som standard inställd på spridningsdiagram, medan parametern diag_kind
styr de diagonala diagrammen och väljs automatiskt beroende på om hue
-parametern är satt.
import seaborn as sns import matplotlib.pyplot as plt # Loading the dataset with data about three different iris species iris_df = sns.load_dataset('iris') # Setting the kind parameter and diag_kind parameters sns.pairplot(iris_df, hue='species', kind='reg', diag_kind=None, height=2, aspect=0.8) plt.show()
'scatter'
, 'kde'
, 'hist'
, 'reg'
är möjliga värden för parametern kind
.
diag_kind
kan ställas in på ett av följande värden:
'auto'
;'hist'
;'kde'
;None
.
Allt är liknande funktionen jointplot()
i detta avseende.
Utforska mer i pairplot()
dokumentationen.
Swipe to start coding
- Använd rätt funktion för att skapa ett pair plot.
- Ange datan för diagrammet till
penguins_df
som det första argumentet. - Ange
'sex'
som kolumnen som mappar diagrammets aspekter till olika färger genom att specificera det andra argumentet. - Ange att icke-diagonala diagram ska ha en regressionslinje (
'reg'
) genom att specificera det tredje argumentet. - Sätt
height
till2
. - Sätt
aspect
till0.8
.
Lösning
Tack för dina kommentarer!