Chapitre3 Les différents systèmes graphiques dont R dispose
R dispose de nombreux outils pour faire un travail approfondi de visualisation des données. Lorsque R est installé, nous avons à notre disposition de multiple fonctionnalités pour créer, éditer et exporter des figures. L’édition de graphique sous R peut être divisé en trois branches : d’un côté l’approche développée dans le package graphics, celle du package grid (qui inclus ggplot2) et une troisième, hétérogène, qui est l’ensemble des libraries qui utilisent d’autres languages, comme par exemple javascript, (et ainsi créer des figures dans un navigateur web).
3.1 Les étapes pour créer un graphique avec R
3.2 Le système graphique du package graphics
Le package graphics est une implémentation du système graphique historique de S. Il s’agit, en effet, de la ré-écriture des fonctionnalités de la bibliothèque GRZ pour les utiliser avec R. Ce travail a été en large partie mené par Ross Ihaka, l’un des deux initiateurs de R. Avec ce package, nous pouvons obtenir en très peu de lignes de commandes des graphiques tout à fait convenable (grâce, par exemple, à la fonction plot()). Nous pouvons également travailler par couches successive pour ajouter un à un les éléments du graphiques et obtenir un rendu graphique plus aboutit. l’utilisation de graphics est répandue, simple, intuitive et sa puissance est souvent mésestimée. C’est pour ces raisons que nous avons choisi de la détailler dans ce livre. De manière générale, pour faire un graphique avec ce système on procède en trois étapes :
- On définit les paramètre graphiques globaux (fonction par() voir chapitre)
- On trace le plot ajoute la fonction que nous souhaitons (plot(), boxplot(),….)
- On ajoute les différents éléments supplémentaire : points, lignes, textes, légendes.
Dans la suite, nous reprenons point par point ces différentes étapes. Une des principales faiblesses de ce système réside dans la difficulté à changer les éléments déjà placés. La plupart du temps, il est nécessaire de ré-exécuter tout le code modifier. Ce système est riche en fonctionnalités et plusieurs package de R utilise ce système pour implémenter des graphiques plus spécifiques. Le package plotrix, développé par Jim Lemon, utilise graphics et ajoute à celui-ci de nombreux types de graphiques supplémentaires dont les graphiques en co-ordonnées polaires.
3.3 Le système graphique du package grid
Le package grid, que nous devons à Paul Murrel, est un système graphique puissant qui donne un cadre performant pour développer des graphiques précis. Il y a plusieurs éléments importants sur lesquels nous revenons en annexe. Le premier est le concept de viewPort : il s’agit de zone rectangulaire qui sont définis dans l’espace et avec un système de co-ordonnées. Il est possible d’en utiliser autant que souhaité, elles peuvent se recouper ou non et posséder des paramètres. C’est en quelques sortes un ensemble très flexibles de calques. Il est possible de naviguer à travers pour placer à tout moment n’importe quel élément du future graphique. Le package grid définis ces propres fonctions primitives pour dessiner points, lignes et polygones. En plus d’un affichage et contrairement à ce que nous avons dans le package graphics, dans grid, les objets affichés sont aussi des objets que l’on peut modifier à sa guise. Cela donne au package grid une grande puissance. Il serait bien long de redévelopper chaque graphique avec grid et comparer graphics et grid est un peu bancal en se sens qu’il ne sont pas réellement implémenté et qu’il faut les faire à la main. Néanmoins c’est grâce à sa puissance que sont nés deux autres systèmes de graphique à succès. Le premier est le système développé par Deepayan Sarkar dans le package lattice. Le second est une implémentation de la grammaire des graphiques de (voir la section précédente), ggplot2 que nous devons à Hadley Wickham. Notez que depuis peu, grid et graphics ont été reliés partiellement grâce au package gridGraphics qui permet d’écrire les fonctions graphics en grid. Ces packages doivent beaucoup au travail de Paul Murrel dont le livre R graphics [ref] et aussi un chapitre sur lattice demeure une référence pour approfondir l’édition de graphiques avec R.
Lorsque les graphiques sont produits que ce soit avec grid ou graphics, pour les exporter dans différent format, on fait appel à un troisième package : grDevices.
3.4 Les graphiques interactives
Les graphiques qui font appel à des bibliothèques JS.