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