Comment utiliser facet_wrap dans R (avec exemples)



La fonction facet_wrap() peut être utilisée pour produire des tracés multi-panneaux dans ggplot2.

Cette fonction utilise la syntaxe de base suivante :

library(ggplot2)

ggplot(df, aes(x_var, y_var)) +
  geom_point() +
  facet_wrap(vars(category_var))

Les exemples suivants montrent comment utiliser cette fonction avec l’ensemble de données mpg intégré dans R :

#view first six rows of mpg dataset
head(mpg)

manufacturer  model  displ  year  cyl	     trans  drv	cty  hwy  fl	  class
										
audi	         a4    1.8  1999    4	auto(l5)      f	18    29   p	compact
audi	         a4    1.8  1999    4	manual(m5)    f	21    29   p	compact
audi	         a4    2.0  2008    4	manual(m6)    f	20    31   p	compact
audi	         a4    2.0  2008    4	auto(av)      f	21    30   p	compact
audi	         a4    2.8  1999    6	auto(l5)      f	16    26   p	compact
audi	         a4    2.8  1999    6	manual(m5)    f	18    26   p	compact

Exemple 1 : fonction de base facet_wrap()

Le code suivant montre comment créer plusieurs nuages de points dans ggplot2 en utilisant displ comme variable d’axe x, hwy comme variable d’axe y et class comme variable de regroupement :

ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  facet_wrap(vars(class))

Exemple 2 : utiliser des étiquettes personnalisées

Le code suivant montre comment utiliser la fonction facet_wrap() avec des étiquettes personnalisées pour les titres des tracés :

#define custom labels
plot_names <- c('2seater' = "2 Seater",
                'compact' = "Compact Vehicle",
                'midsize' = "Midsize Vehicle",
                'minivan' = "Minivan",
                'pickup' = "Pickup Truck",
                'subcompact' = "Subcompact Vehicle",
                'suv' = "Sport Utility Vehicle")

#use facet_wrap with custom plot labels
ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  facet_wrap(vars(class), labeller = as_labeller(plot_names))

facet_wrap avec des étiquettes personnalisées dans R

Exemple 3 : utiliser des échelles personnalisées

Le code suivant montre comment utiliser la fonction facet_wrap() avec des échelles personnalisées pour chaque tracé individuel :

#use facet_wrap with custom scales
ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  facet_wrap(vars(class), scales='free')

Exemple 4 : Utiliser une commande personnalisée

Le code suivant montre comment utiliser la fonction facet_wrap() avec un ordre personnalisé pour les tracés individuels :

#define order for plots
mpg <- within(mpg, class <- factor(class, levels=c('compact', '2seater', 'suv',
                                                   'subcompact', 'pickup',
                                                   'minivan', 'midsize')))

#use facet_wrap with custom order
ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  facet_wrap(vars(class))

face_wrap() avec commande personnalisée dans R

Notez que les tracés apparaissent dans l’ordre exact que nous avons spécifié.

Ressources additionnelles

Comment changer la taille de la police dans ggplot2
Comment supprimer une légende dans ggplot2
Comment faire pivoter les étiquettes des axes dans ggplot2

Ajouter un commentaire

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