Pairplot Seaborn em Python

Manav Narula 15 fevereiro 2024
Pairplot Seaborn em Python

Em Python, usamos o módulo do mar para criar diferentes tipos de gráficos e plotagens para visualizar um conjunto de dados. Diferentes funções criam diferentes tipos de gráficos. Às vezes, um único gráfico pode não ser suficiente para visualizar um conjunto de dados, e podemos precisar criar vários gráficos simultaneamente. A função pairplot() pode ajudar com isso.

Este tutorial irá apresentar como usar a função pairplot() do módulo seaborn em Python.

É baseado na classe PairGrid em seaborn e retorna um objeto de seu tipo. Ele também plota todas as colunas numéricas dos dados em ambos os eixos, exibindo um array de diferentes plotagens. Ele produz uma figura final com um gráfico uniforme na diagonal e um gráfico diferente nos triângulos superior e inferior.

Se quisermos, podemos especificar as variáveis ​​necessárias a serem plotadas usando o argumento x_vars, y_vars ou vars dentro da função pairplot().

Por exemplo,

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)

pairplot in seaborn

No código acima, criamos um exemplo simples da função pairplot(). Observe os diferentes gráficos traçados na diagonal.

Podemos ajustar o resultado final usando alguns métodos e parâmetros. O parâmetro matiz pode ser usado para plotar as diferentes categorias em cores diferentes. O argumento palette pode definir as cores usadas para isso. Uma legenda comum é adicionada a todos os gráficos. Podemos adicionar isso no exemplo acima para distinguir os dois produtos.

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 com o parâmetro hue

Também podemos controlar o tipo de gráfico a ser traçado na parte superior-inferior ou nos triângulos e na diagonal. O parâmetro diag_kind é usado para especificar os gráficos para a diagonal e o parâmetro kind para os restantes. Seu valor pode ser reg, scatter, kde, hist ou algum outro gráfico.

Por exemplo,

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 com o parâmetro diag_kind

Para personalizar os gráficos individuais na diagonal e de outra forma, usamos os parâmetros plot_kws e diag_kws. Passamos as personalizações necessárias como pares de valores-chave de dicionário. Podemos alterar a altura das plotagens individuais também usando o parâmetro height.

Além disso, lembre-se de que ele retorna um objeto da classe PairGrid para personalizar a figura final usando métodos dessa classe.

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