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