Pairplot Seaborn in Python

Manav Narula 15 febbraio 2024
Pairplot Seaborn in Python

In Python, utilizziamo il modulo Seaborn per creare diversi tipi di grafici e grafici per visualizzare un set di dati. Diverse funzioni creano diversi tipi di grafici. A volte un singolo grafico potrebbe non essere sufficiente per visualizzare un set di dati e potrebbe essere necessario tracciare più grafici contemporaneamente. La funzione pairplot() può aiutare in questo.

Questo tutorial introdurrà come usare la funzione pairplot() del modulo seaborn in Python.

Si basa sulla classe PairGrid in seaborn e restituisce un oggetto del suo tipo. Traccia anche tutte le colonne numeriche dei dati su entrambi gli assi, visualizzando una matrice di grafici diversi. Produce una figura finale con un grafico uniforme sulla diagonale e un grafico diverso sui triangoli superiore e inferiore.

Se lo desideriamo, possiamo specificare le variabili richieste da tracciare utilizzando l’argomento x_vars, y_vars o l’argomento vars all’interno della funzione pairplot().

Per esempio,

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns


df = pd.DataFrame(
    {
        "Quantity": [5, 6, 7, 8, 5, 6, 7, 8, 5, 6, 7, 8, 5, 6, 7, 8],
        "Price": [9, 10, 15, 16, 13, 14, 15, 18, 11, 12, 14, 15, 16, 17, 18, 19],
        "Day": [1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2],
        "Product": [
            "A",
            "A",
            "A",
            "A",
            "B",
            "B",
            "B",
            "B",
            "A",
            "A",
            "A",
            "A",
            "B",
            "B",
            "B",
            "B",
        ],
    }
)
sns.pairplot(df)

coppia in mare

Nel codice sopra, creiamo un semplice esempio della funzione pairplot(). Notare i diversi grafici tracciati sulla diagonale.

Possiamo modificare il risultato finale utilizzando alcuni metodi e parametri. Il parametro hue può essere utilizzato per tracciare le diverse categorie in diversi colori. L’argomento palette può definire i colori usati per questo. Viene aggiunta una legenda comune per tutti i grafici. Possiamo aggiungere questo nell’esempio sopra per distinguere i due prodotti.

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {
        "Quantity": [5, 6, 7, 8, 5, 6, 7, 8, 5, 6, 7, 8, 5, 6, 7, 8],
        "Price": [9, 10, 15, 16, 13, 14, 15, 18, 11, 12, 14, 15, 16, 17, 18, 19],
        "Day": [1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2],
        "Product": [
            "A",
            "A",
            "A",
            "A",
            "B",
            "B",
            "B",
            "B",
            "A",
            "A",
            "A",
            "A",
            "B",
            "B",
            "B",
            "B",
        ],
    }
)
sns.pairplot(df, hue="Product", palette="husl")

pairplot in seaborn con il parametro hue

Possiamo anche controllare il tipo di grafici da tracciare in alto-basso o triangoli e diagonale. Il parametro diag_kind viene utilizzato per specificare i grafici per la diagonale e il parametro kind per il restante. Il loro valore può essere reg, scatter, kde, hist o qualche altro grafico.

Per esempio,

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns


df = pd.DataFrame(
    {
        "Quantity": [5, 6, 7, 8, 5, 6, 7, 8, 5, 6, 7, 8, 5, 6, 7, 8],
        "Price": [9, 10, 15, 16, 13, 14, 15, 18, 11, 12, 14, 15, 16, 17, 18, 19],
        "Day": [1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2],
        "Product": [
            "A",
            "A",
            "A",
            "A",
            "B",
            "B",
            "B",
            "B",
            "A",
            "A",
            "A",
            "A",
            "B",
            "B",
            "B",
            "B",
        ],
    }
)
sns.pairplot(df, hue="Product", diag_kind="hist", kind="scatter")

pairplot in seaborn con il parametro diag_kind

Per personalizzare i singoli grafici sulla diagonale e non, utilizziamo i parametri plot_kws e diag_kws. Passiamo le personalizzazioni richieste come coppie chiave-valore del dizionario. Possiamo modificare l’altezza dei singoli appezzamenti anche utilizzando il parametro height.

Inoltre, ricorda che restituisce un oggetto della classe PairGrid per personalizzare la figura finale utilizzando i metodi di quella classe.

Autore: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn