Comment créer un Barplot dans ggplot2 avec plusieurs variables
Un barplot est utile pour visualiser les quantités de différentes variables catégorielles.
Parfois, nous souhaitons créer un barplot qui visualise les quantités de variables catégorielles divisées en sous-groupes.
Par exemple, nous souhaiterions peut-être visualiser les ventes totales de pop-corn et de sodas pour trois stades sportifs différents. Ce didacticiel fournit un exemple étape par étape de la façon de créer le barplot suivant avec plusieurs variables :
Étape 1 : Créer les données
Tout d’abord, créons un bloc de données pour contenir nos données :
#create data df <- data.frame(stadium=rep(c('A', 'B', 'C'), each=4), food=rep(c('popcorn', 'soda'), times=6), sales=c(4, 5, 6, 8, 9, 12, 7, 9, 9, 11, 14, 13)) #view data df stadium food sales 1 A popcorn 4 2 A soda 5 3 A popcorn 6 4 A soda 8 5 B popcorn 9 6 B soda 12 7 B popcorn 7 8 B soda 9 9 C popcorn 9 10 C soda 11 11 C popcorn 14 12 C soda 13
Étape 2 : Créer le Barplot avec plusieurs variables
Le code suivant montre comment créer le barplot avec plusieurs variables en utilisant la fonction geom_bar() pour créer les barres et l’argument ‘dodge’ pour spécifier que les barres de chaque groupe doivent « s’esquiver » et être affichées côte à côte.
ggplot(df, aes(fill=food, y=sales, x=stadium)) + geom_bar(position='dodge', stat='identity')
Les différents stades – A, B et C – sont affichés le long de l’axe des x et les ventes de pop-corn et de soda correspondantes (en milliers) sont affichées le long de l’axe des y.
Étape 3 : Modifier l’esthétique du Barplot
Le code suivant montre comment ajouter un titre, modifier les étiquettes des axes et personnaliser les couleurs sur le barplot :
ggplot(df, aes(fill=food, y=sales, x=stadium)) + geom_bar(position='dodge', stat='identity') + ggtitle('Sales by Stadium') + xlab('Stadium') + ylab('Sales (in thousands)') + scale_fill_manual('Product', values=c('coral2','steelblue'))
Ressources additionnelles
Comment changer le titre de la légende dans ggplot2
Comment changer la taille de la légende dans ggplot2
Un guide complet des meilleurs thèmes ggplot2