Chapitre 4 Package ggplot2

4.1 Présentation de ggplot2

  • ggplot2 est un package créé par Hadley Wickham et Winston Chang pour implémenter dans R la vision développée par Leland Wilkinson dans The Grammar of Graphics (Statistics and Computing) de la conception de graphiques.

  • Le but est de fournir une approche unique pour produire quasiment toute valorisation graphique de données que l’on peut trouver dans des revues scientifiques, les journaux, dans l’analyse statistique ou la data visualisation.

  • Ce package s’inscrit aujourd’hui dans R par le framework tidyverse qui propose une approche cohérente entre l’importation et la préparation des données, leur analyse et leur valorisation.

4.2 Le Tidyverse

le tidyverse

4.3 Les concepts clefs

Pour construire un graphique avec ggplot2, il faut définir plusieurs éléments :

  • la donnée : ggplot2 permet de travailler sur des vecteurs, des dataframes, des tibbles, ou des données spatiales ;

  • le mapping : on définit dans l’aesthetic (ou aes) le mapping, c’est à dire la correspondance entre éléments visuels et les variables. C’est dans l’aesthetic (ou aes) qu’est déclaré que l’on veut représenter qui dépend des variables (quelle variable sur l’axe x, sur l’axe y, quelle variable pour définir une graduation de couleurs…) ;

  • les paramètres : on définit les autres paramètres qui dépendent de constantes (par exemple : je veux que toutes mes lignes soient rouge ou de taille 2 pixels) ;

  • le layer (“forme géométrique”) : on définit sous quelle représentation graphique on représente les paramètres précédents. Sous ggplot, ces fonctions sont de la forme geom_XX ;

L’écriture type d’un graphique est donc:

ggplot(data = <DATA>) + 
  <FORME_GEO>(mapping = aes(<MAPPINGS>),...=<PARAMS>)

On va ensuite pouvoir enrichir avec des fonctions supplémentaires. Chaque fonction s’enchaine avec des + comme les pipe.

ggplot(data = <DATA>) + 
  <FORME_GEO>(mapping = aes(<MAPPINGS>),...=<PARAMS>)+
  <FONCTION1>+
  ...