Seaborn - Traçando Dados Categóricos

Em nossos capítulos anteriores, aprendemos sobre gráficos de dispersão, gráficos hexbin e gráficos kde que são usados ​​para analisar as variáveis ​​contínuas em estudo. Esses gráficos não são adequados quando a variável em estudo é categórica.

Quando uma ou ambas as variáveis ​​em estudo são categóricas, usamos gráficos como striplot (), swarmplot (), etc ,. Seaborn fornece interface para fazer isso.

Gráficos de dispersão categóricos

Nesta seção, aprenderemos sobre gráficos de dispersão categóricos.

stripplot ()

stripplot () é usado quando uma das variáveis ​​em estudo é categórica. Ele representa os dados em ordem classificada ao longo de qualquer um dos eixos.

Exemplo

import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('iris')
sb.stripplot(x = "species", y = "petal_length", data = df)
plt.show()

Resultado

No gráfico acima, podemos ver claramente a diferença de petal_lengthem cada espécie. Mas, o maior problema com o gráfico de dispersão acima é que os pontos no gráfico de dispersão estão sobrepostos. Usamos o parâmetro 'Jitter' para lidar com esse tipo de cenário.

Jitter adiciona algum ruído aleatório aos dados. Este parâmetro ajustará as posições ao longo do eixo categórico.

Exemplo

import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('iris')
sb.stripplot(x = "species", y = "petal_length", data = df, jitter = Ture)
plt.show()

Resultado

Agora, a distribuição dos pontos pode ser vista facilmente.

Swarmplot ()

Outra opção que pode ser usada como alternativa para 'Jitter' é a função swarmplot(). Esta função posiciona cada ponto do gráfico de dispersão no eixo categórico e, assim, evita pontos sobrepostos -

Exemplo

import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('iris')
sb.swarmplot(x = "species", y = "petal_length", data = df)
plt.show()

Resultado