Seaborn - Gráficos categóricos de vários painéis
Os dados categóricos podem ser visualizados usando dois gráficos, você pode usar as funções pointplot(), ou a função de nível superior factorplot().
Factorplot
Factorplot desenha um gráfico categórico em um FacetGrid. Usando o parâmetro 'kind', podemos escolher o gráfico como boxplot, violinplot, barplot e stripplot. FacetGrid usa pointplot por padrão.
Exemplo
import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('exercise')
sb.factorplot(x = "time", y = pulse", hue = "kind",data = df);
plt.show()
Resultado
Podemos usar gráficos diferentes para visualizar os mesmos dados usando o kind parâmetro.
Exemplo
import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('exercise')
sb.factorplot(x = "time", y = "pulse", hue = "kind", kind = 'violin',data = df);
plt.show()
Resultado
No factorplot, os dados são plotados em uma grade de faceta.
O que é Facet Grid?
Facet grid forma uma matriz de painéis definidos por linha e coluna, dividindo as variáveis. Devido aos painéis, um único gráfico se parece com vários gráficos. É muito útil analisar todas as combinações em duas variáveis discretas.
Vamos visualizar acima a definição com um exemplo
Exemplo
import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('exercise')
sb.factorplot(x = "time", y = "pulse", hue = "kind", kind = 'violin', col = "diet", data = df);
plt.show()
Resultado
A vantagem de usar o Facet é que podemos inserir outra variável no gráfico. O gráfico acima é dividido em dois gráficos com base em uma terceira variável chamada 'dieta' usando o parâmetro 'col'.
Podemos fazer muitas facetas de coluna e alinhá-las com as linhas da grade -
Exemplo
import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('titanic')
sb.factorplot("alive", col = "deck", col_wrap = 3,data = df[df.deck.notnull()],kind = "count")
plt.show()