![Page 1: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/1.jpg)
Typologie Base ggplot2 References
Optimiser ses graphiques avec R
Jerome Sueur
MNHN – Systematique et EvolutionUMR CNRS 7205 – OSEB
28 Avril 2011
J Sueur Graphiques
![Page 2: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/2.jpg)
Typologie Base ggplot2 References
1 Typologie
2 Base
3 ggplot2
4 References
J Sueur Graphiques
![Page 3: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/3.jpg)
Typologie Base ggplot2 References
Outline
1 Typologie
2 Base
3 ggplot2
4 References
J Sueur Graphiques
![Page 4: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/4.jpg)
Typologie Base ggplot2 References
Typologie – Quels graphiques ?
simples et composes
2D ou 3D
statiques, interactifs, animes
J Sueur Graphiques
![Page 5: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/5.jpg)
Typologie Base ggplot2 References
Typologie – Familles
Quatre familles de graphiques issus de la base ou de packagesspecifiques :
base (Ross Ihaka)
package grids (Paul Murrel)
package lattice (Deepayan Sarkar)
package ggplot2 (Hadley Wickman)
J Sueur Graphiques
![Page 6: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/6.jpg)
Typologie Base ggplot2 References
Outline
1 Typologie
2 Base
3 ggplot2
4 References
J Sueur Graphiques
![Page 7: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/7.jpg)
Typologie Base ggplot2 References
Base – Principes
Cinq grands types de fonctions graphiques
haut-niveau (high-level)
bas-niveau (low-level)
parametrage (parameters)
division (treillis, faceting)
impression (vectorielle, matricielle)
J Sueur Graphiques
![Page 8: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/8.jpg)
Typologie Base ggplot2 References
Base – Fonctions de haut-niveau
nuages de points
profils
graphiques en batons
histogrammes
boıtes a moustaches
graphiques en violons
camemberts
radars
contours
cartes de densite
cartes geographiques
images
etc
J Sueur Graphiques
![Page 9: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/9.jpg)
Typologie Base ggplot2 References
Base – Fonctions de bas-niveau
points, traits, surfaces (rectangles, polygones, cercles)
lignes, courbes, segments, fleches
titres, legendes, etiquettes
J Sueur Graphiques
![Page 10: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/10.jpg)
Typologie Base ggplot2 References
Base – Fonctions de parametrage
couleurs
taille, police, orientation
echelles
marges
superposition
etc
J Sueur Graphiques
![Page 11: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/11.jpg)
Typologie Base ggplot2 References
Base – Nombre de packages
data
vers count date
1 1.30 110 2001-06-21
2 1.40 129 2001-12-17
3 1.50 161 2002-06-12
4 1.70 219 2003-05-25
5 1.80 273 2003-11-16
6 1.90 357 2004-06-05
7 2.00 406 2004-10-12
8 2.10 548 2005-06-18
9 2.20 647 2005-12-16
10 2.30 739 2006-05-31
11 2.40 911 2006-12-12
12 2.50 1000 2007-04-12
13 2.60 1300 2007-11-16
14 2.70 1495 2008-03-18
15 2.80 1614 2008-10-20
16 2.90 1907 2009-04-17
17 2.10 2008 2009-10-26
18 2.12 2952 2011-04-06
J Sueur Graphiques
![Page 12: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/12.jpg)
Typologie Base ggplot2 References
Base – Exemple
plot(date, count)
● ● ●●
●●
●
●●
●
●●
●
●●
●●
●
2002 2004 2006 2008 2010
050
010
0015
0020
0025
0030
00
date
coun
t
J Sueur Graphiques
![Page 13: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/13.jpg)
Typologie Base ggplot2 References
Base – Exemple
par(bg = "darkgrey", fg = "white", lwd = 2)
plot(date, count, pch = 20, cex = 2, col = "white", xlab = "Annee",
ylab = "Nombre", main = "Nombre de packages sur le CRAN")
points(date[18], count[18], pch = 20, col = "yellow",
cex = 2)
text(date[18], count[18], pos = 2, label = "6 Avril 2011",
col = "yellow")
lines(lowess(date, count), col = 2, lwd = 2)
J Sueur Graphiques
![Page 14: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/14.jpg)
Typologie Base ggplot2 References
Base – Exemple
● ● ● ● ●● ●
●●
●
●●
●
●●
●●
●
2002 2004 2006 2008 2010
050
010
0015
0020
0025
0030
00Nombre de packages sur le CRAN
Année
Nom
bre
●6 Avril 2011
J Sueur Graphiques
![Page 15: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/15.jpg)
Typologie Base ggplot2 References
Base – Des exemples par centaines
http ://addictedtor.free.fr/graphiques/index.php
J Sueur Graphiques
![Page 16: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/16.jpg)
Typologie Base ggplot2 References
Outline
1 Typologie
2 Base
3 ggplot2
4 References
J Sueur Graphiques
![Page 17: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/17.jpg)
Typologie Base ggplot2 References
ggplot2 – Historique
developpe par Hadley Wickham (Rice University,Houston, USA)
depend principalement des packages reshape etplyr
premiere version : Juin 2007
J Sueur Graphiques
![Page 18: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/18.jpg)
Typologie Base ggplot2 References
ggplot2 – Principes generaux
obeit a de nouveaux principes esthetiques
obeit a une construction particuliere suivant la grammaire graphiquedeveloppee par Wilkinson en 2005
permet une construction rapide de graphiques simples
reduction (considerable) de la longueur des codes
permet la creation de nouvelles familles de graphiques
Nouveau dialecte a apprendre
J Sueur Graphiques
![Page 19: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/19.jpg)
Typologie Base ggplot2 References
ggplot2 – Principes generaux
obeit a de nouveaux principes esthetiques
obeit a une construction particuliere suivant la grammaire graphiquedeveloppee par Wilkinson en 2005
permet une construction rapide de graphiques simples
reduction (considerable) de la longueur des codes
permet la creation de nouvelles familles de graphiques
Nouveau dialecte a apprendre
J Sueur Graphiques
![Page 20: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/20.jpg)
Typologie Base ggplot2 References
ggplot2 – Principes generaux
obeit a de nouveaux principes esthetiques
obeit a une construction particuliere suivant la grammaire graphiquedeveloppee par Wilkinson en 2005
permet une construction rapide de graphiques simples
reduction (considerable) de la longueur des codes
permet la creation de nouvelles familles de graphiques
Nouveau dialecte a apprendre
J Sueur Graphiques
![Page 21: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/21.jpg)
Typologie Base ggplot2 References
ggplot2 – Principes generaux
obeit a de nouveaux principes esthetiques
obeit a une construction particuliere suivant la grammaire graphiquedeveloppee par Wilkinson en 2005
permet une construction rapide de graphiques simples
reduction (considerable) de la longueur des codes
permet la creation de nouvelles familles de graphiques
Nouveau dialecte a apprendre
J Sueur Graphiques
![Page 22: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/22.jpg)
Typologie Base ggplot2 References
ggplot2 – Principes generaux
obeit a de nouveaux principes esthetiques
obeit a une construction particuliere suivant la grammaire graphiquedeveloppee par Wilkinson en 2005
permet une construction rapide de graphiques simples
reduction (considerable) de la longueur des codes
permet la creation de nouvelles familles de graphiques
Nouveau dialecte a apprendre
J Sueur Graphiques
![Page 23: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/23.jpg)
Typologie Base ggplot2 References
ggplot2 – Principes generaux
obeit a de nouveaux principes esthetiques
obeit a une construction particuliere suivant la grammaire graphiquedeveloppee par Wilkinson en 2005
permet une construction rapide de graphiques simples
reduction (considerable) de la longueur des codes
permet la creation de nouvelles familles de graphiques
Nouveau dialecte a apprendre
J Sueur Graphiques
![Page 24: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/24.jpg)
Typologie Base ggplot2 References
ggplot2 – Les calques ou layers
ggplot2 cree des layers (calques) qui peuvent s’utiliser comme desobjets (assignation possible).
Voici les principaux layers :
data → donnees brutesmapping → projection graphiquegeom → objets geometriques (points, lignes, polygones, etc.)stat → transformation statistique (histogramme, modele, etc.)scale → espace esthetique (couleurs, formes, tailes, axes, legendes)coord → systeme de coordonnees (axes, grilles)facet → division
J Sueur Graphiques
![Page 25: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/25.jpg)
Typologie Base ggplot2 References
ggplot2 – Nombre de packages
plot <- qplot(date, count, data = data, geom = c("point",
"smooth"))
plot + xlab("Annees") + ylab("Number of packages") +
annotate("text", x = data[17, 3], y = data[18, 2] +
100, label = "6 Avril 2011", colour = "red")
Années
Num
ber
of p
acka
ges
500
1000
1500
2000
2500
3000
● ●●
●●
●●
●
●
●
●
●
●
●
●
●
●
●6 Avril 2011
2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
J Sueur Graphiques
![Page 26: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/26.jpg)
Typologie Base ggplot2 References
ggplot2 – Fonctions de base
ggplot2 a deux fonctions graphiques de base :
- qplot() pour quick plot
rapide mais simple (pour un seul jeu de donnees et une seulemethode esthetique)principe :
qplot(x, y, data=data)
- ggplot()
lent mais plus puissant, ajout de layers avec +
principe :
gplot(data, aes(x, y)) + layers
Remarque
On peut obtenir les memes resultats avec les deux fonctions (equivalence)
J Sueur Graphiques
![Page 27: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/27.jpg)
Typologie Base ggplot2 References
ggplot2 – Objets geometriques (geom)
point → scatterplot (defaut si 2 dimensions)smooth → ajoute une courbe de tendance (lissage) a un scatterplotboxplot → boıte a moustachesjitter → giguepath → chemins entre des points (∀ direction)line → lignes entre des points (de gauche a droite)histogram → histogramme (defaut si 1 dimension)freqpoly → polygone frequentieldensity → courbe de densitebar → batons
J Sueur Graphiques
![Page 28: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/28.jpg)
Typologie Base ggplot2 References
ggplot2 – Categorisation par la couleur
head(diamonds)
carat cut color clarity depth table price x y z
13998 1.01 Ideal G SI1 62.6 56 5698 6.37 6.41 4.00
301 0.77 Ideal I VS1 61.5 59 2798 5.87 5.91 3.62
6816 1.01 Fair D SI1 66.3 55 4118 6.22 6.17 4.11
48416 0.73 Premium F SI2 60.2 59 1971 5.87 5.82 3.52
20812 1.04 Premium G IF 61.3 58 9039 6.52 6.43 3.97
36091 0.32 Very Good F VVS1 61.9 59 926 4.34 4.39 2.70
J Sueur Graphiques
![Page 29: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/29.jpg)
Typologie Base ggplot2 References
ggplot2 – Categorisation par la couleur
qplot(carat, price, data = diamonds, colour = color)
carat
pric
e
5000
10000
15000
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
● ●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●● ●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
0.5 1.0 1.5 2.0 2.5
color
● D
● E
● F
● G
● H
● I
● J
J Sueur Graphiques
![Page 30: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/30.jpg)
Typologie Base ggplot2 References
ggplot2 – Categorisation par la couleur
qplot(carat, data = diamonds, geom = "histogram", fill = color)
carat
..cou
nt..
0
5
10
15
0.5 1.0 1.5 2.0 2.5
color
D
E
F
G
H
I
J
J Sueur Graphiques
![Page 31: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/31.jpg)
Typologie Base ggplot2 References
ggplot2 – Categorisation par la couleur
qplot(carat, data = diamonds, geom = "density", fill = color,
alpha = I(1/5))
carat
..den
sity
..
0.0
0.2
0.4
0.6
0.8
1.0
1.2
1.4
0.5 1.0 1.5 2.0 2.5
color
D
E
F
G
H
I
J
J Sueur Graphiques
![Page 32: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/32.jpg)
Typologie Base ggplot2 References
ggplot2 – Division
Principe : diviser le jeu de donnees en sous-ensembles et creer ungraphique similaire pour chacun sous-ensemble.
Syntaxe : argument facets de qplot selon facteur en ligne ∼facteur en colonne
facets = facteur ∼ . produira un graphique multiple encolonnesfacets = . ∼ facteur produira un graphique multiple en lignes
J Sueur Graphiques
![Page 33: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/33.jpg)
Typologie Base ggplot2 References
ggplot2 – Division
qplot(carat, data = diamonds, facets = color ~ ., geom = "histogram")
carat
..cou
nt..
0123456
0123456
0123456
0123456
0123456
0123456
0123456
0.5 1.0 1.5 2.0 2.5
DE
FG
HI
J
J Sueur Graphiques
![Page 34: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/34.jpg)
Typologie Base ggplot2 References
ggplot2 – Division
data(mpg)
qplot(displ, hwy, data = mpg, geom = c("point", "smooth"),
facets = . ~ year)
displ
hwy
15
20
25
30
35
40
1999
●●
●●●
● ●●
●
●
●
●
●
●
●
●
● ●
●● ●
●
●● ●
●
●
●
●●
●
●
● ●●
●
● ●●●
●●
●
●
●
●
●
●
●●
●
●
●
●
●●●
●
●
●
● ●
●
●
● ●
●
●
●
●
●●
● ●
●
●
●
●● ●●
●●
●
●
●
●
●●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
2 3 4 5 6 7
2008
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
● ●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
● ●
● ●
●
●
●
●
●
●
●●
●
●
●
●●
●
●●●
●
●
●
●
●
●
● ● ●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●●●● ●●
●
●
●
●
●
2 3 4 5 6 7
J Sueur Graphiques
![Page 35: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/35.jpg)
Typologie Base ggplot2 References
ggplot2 – Arguments
ggplot permet, en association avec de produire des graphes pluscomplexes.
ggplot a deux arguments :
- data (donnees dans un data.frame)
- aesthetic mapping (parametres esthetiques de la projection, doiventetre inclus dans la fonction aes())
J Sueur Graphiques
![Page 36: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/36.jpg)
Typologie Base ggplot2 References
ggplot2 – Calques
Voici les principaux layers :
- geom_XXX() (par example : geom_point(), geom_histogramm(),etc.)
- stat_XXX() (par exemple : stat_bin(), stat_smooth(), etc.)
- scale_XXX() (par exemple : scale_x_continuous(),scale_x_log10(), etc.)
- facet_XXX() (par exemple : facet_grid(), facet_wrap(), etc.)
- coord_XXX() (par exemple : coord_flip(), coord_trans(), etc.)
J Sueur Graphiques
![Page 37: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/37.jpg)
Typologie Base ggplot2 References
ggplot2 – Premier calque
p <- ggplot(mpg, aes(displ, hwy, colour = factor(cyl)))
summary(p)
data: manufacturer, model, displ, year, cyl, trans, drv, cty,
hwy, fl, class [234x11]
mapping: x = displ, y = hwy, colour = factor(cyl)
faceting: facet_grid(. ~ ., FALSE)
J Sueur Graphiques
![Page 38: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/38.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemple d’objet geometrique
p + geom_point() + geom_smooth(method = "lm")
displ
hwy
15
20
25
30
35
40
●●
●
●
●
●
●
● ●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●● ●●
●
●
●
●
●●
●
●
●●
●
●
●●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●●
●
●
●
●
●●
●
● ●●
●
●
●●
●
●● ●●
●
●
●
●
●
●
●●
●●
●
●
●
● ●
●
●
●●● ●
●
●
●
●●
●
●
●
●
●●
●
●●●
●
●
●
●
●
●
●●
● ●
●●
●
● ●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●● ●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
● ●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
2 3 4 5 6 7
factor(cyl)
● 4
● 5
● 6
● 8
J Sueur Graphiques
![Page 39: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/39.jpg)
Typologie Base ggplot2 References
ggplot2 – Systemes de coordonnees
p <- ggplot(diamonds, aes(x = "", fill = cut)) + geom_bar(width = 1)
p
..cou
nt..
0
20
40
60
80
100
cut
Fair
Good
Very Good
Premium
Ideal
J Sueur Graphiques
![Page 40: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/40.jpg)
Typologie Base ggplot2 References
ggplot2 – Systemes de coordonnees
p + coord_polar(theta = "y")
..cou
nt..
20
4060
80
0/100
cut
Fair
Good
Very Good
Premium
Ideal
J Sueur Graphiques
![Page 41: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/41.jpg)
Typologie Base ggplot2 References
ggplot2 – Systemes de coordonnees
p <- qplot(cut, price, data = diamonds, geom = "boxplot")
p
cut
pric
e
5000
10000
15000
●
●
●
●
●
●
●
●
●
●
Fair Good Very Good Premium Ideal
J Sueur Graphiques
![Page 42: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/42.jpg)
Typologie Base ggplot2 References
ggplot2 – Systemes de coordonnees
p + coord_flip()
price
cut
Fair
Good
Very Good
Premium
Ideal
●● ●●
● ●●● ●●
5000 10000 15000
J Sueur Graphiques
![Page 43: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/43.jpg)
Typologie Base ggplot2 References
ggplot2 – Themes
Le theme controle l’apparence globale (police, couleurs).
Il y a deux themes par defaut :
- theme_gray() : fond gris, grille blanche
- theme_bw() : fond blanc, grille grise
J Sueur Graphiques
![Page 44: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/44.jpg)
Typologie Base ggplot2 References
ggplot2 – Themes
Il y a deux manieres de choisir le theme par defaut
- globalement avec theme_set(theme_XXX).
- localement comme un layer avec egalementtheme_set(theme_XXX)
J Sueur Graphiques
![Page 45: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/45.jpg)
Typologie Base ggplot2 References
ggplot2 – Themes
Modification globale pour tous les graphiques suivants en utilisanttheme_update :theme_update(plot.background = theme_rect(fill = "yellow"))
data(movies)
qplot(rating, data = movies, binwidth = 1)
rating
..cou
nt..
0
5000
10000
15000
0 2 4 6 8 10
J Sueur Graphiques
![Page 46: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/46.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par Michael Lavine (UMass Amherst)https ://github.com/hadley/ggplot2/wiki
J Sueur Graphiques
![Page 47: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/47.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par Claudia Beleites (TU Dresden & Uni. Trieste)https ://github.com/hadley/ggplot2/wiki
J Sueur Graphiques
![Page 48: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/48.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par David Kahle (Rice University)https ://github.com/hadley/ggplot2/wiki
J Sueur Graphiques
![Page 49: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/49.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par Christian Kramer (NIBR Basel)https ://github.com/hadley/ggplot2/wiki
J Sueur Graphiques
![Page 50: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/50.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par Jean-Olivier Irisson (JiHO)https ://github.com/hadley/ggplot2/wiki
J Sueur Graphiques
![Page 51: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/51.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par Stefan Muthershttps ://github.com/hadley/ggplot2/wiki
J Sueur Graphiques
![Page 52: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/52.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par Heike Hofmann (Iowa State University)https ://github.com/hadley/ggplot2/wiki
J Sueur Graphiques
![Page 53: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/53.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par learnrhttp ://learnr.wordpress.com/
J Sueur Graphiques
![Page 54: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/54.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par Chttp ://www.r-bloggers.com/analyze-gold-demand-and-investments-using-r/
J Sueur Graphiques
![Page 55: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/55.jpg)
Typologie Base ggplot2 References
ggplot2 – Exemples
par Winston Changhttp ://wiki.stdout.org/rcookbook
J Sueur Graphiques
![Page 56: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/56.jpg)
Typologie Base ggplot2 References
Outline
1 Typologie
2 Base
3 ggplot2
4 References
J Sueur Graphiques
![Page 57: Optimiser ses graphiques avec R - Muséum national d](https://reader030.vdocuments.pub/reader030/viewer/2022012013/6158a1f6abf2dd20c9005657/html5/thumbnails/57.jpg)
Typologie Base ggplot2 References
References
Graphiques de la base :
Murrell, P. 2005. – R graphics. Chapman & hall / CRC.Page web de P. Murrell :http ://www.stat.auckland.ac.nz/ paul/RGraphics/rgraphics.htmlhttp ://addictedtor.free.fr/graphiques/index.phpGraphic task viewhttp ://cran.at.r-project.org/web/views/Graphics.htmlGraphical model task viewhttp ://cran.at.r-project.org/web/views/gR.html
Graphiques de ggplot2 :
Wilkinson, L. (2005) – The grammar of graphics. Statistics andComputing. SpringerWickman, H. 2009 – ggplot2. Elegant graphics for dataanalysis. Springer.Pageweb : http ://had.co.nz/ggplot2/Page Git : https ://github.com/hadley/ggplot2Groupe de discussion :http ://groups.google.com/group/ggplot2Application web : http ://yeroon.net/ggplot2/
J Sueur Graphiques