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 :

Barplot avec plusieurs variables dans R

É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')

Barplot avec plusieurs variables dans R

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

Barplot avec plusieurs variables dans R

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

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *