Seaborn - Graphiques catégoriels multi-panneaux
Les données catégorielles peuvent-elles être visualisées à l'aide de deux graphiques, vous pouvez soit utiliser les fonctions pointplot(), ou la fonction de niveau supérieur factorplot().
Factorplot
Factorplot dessine un tracé catégoriel sur un FacetGrid. En utilisant le paramètre «kind», nous pouvons choisir l'intrigue comme boxplot, violinplot, barplot et stripplot. FacetGrid utilise le pointplot par défaut.
Exemple
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()
Production
Nous pouvons utiliser différents graphiques pour visualiser les mêmes données en utilisant le kind paramètre.
Exemple
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()
Production
Dans factorplot, les données sont tracées sur une grille à facettes.
Qu'est-ce que Facet Grid?
Facet grid forme une matrice de panneaux définis par ligne et colonne en divisant les variables. En raison des panneaux, une seule parcelle ressemble à plusieurs parcelles. Il est très utile d'analyser toutes les combinaisons de deux variables discrètes.
Visualisons la définition ci-dessus avec un exemple
Exemple
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()
Production
L'avantage d'utiliser Facet est que nous pouvons entrer une autre variable dans le graphique. Le graphique ci-dessus est divisé en deux graphiques basés sur une troisième variable appelée «régime» utilisant le paramètre «col».
Nous pouvons créer de nombreuses facettes de colonne et les aligner avec les lignes de la grille -
Exemple
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()