1 / 31

Présentation du package graphique ggplot2

Présentation du package graphique ggplot2. Alicia Gehin , Charlotte Rüger , Carole Cortes. Principe du package ggplot2. Fonctions du packages. Les différents Layers. Exemples d’utilisation. Principe du package ggplot2. Graphique = association d’objets : calques

dima
Download Presentation

Présentation du package graphique ggplot2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Présentation du package graphique ggplot2 Alicia Gehin, Charlotte Rüger, Carole Cortes

  2. Principe du package ggplot2 • Fonctions du packages • Les différents Layers • Exemples d’utilisation

  3. Principe du package ggplot2 Graphique = association d’objets : calques (basé sur Grammaire des graphiques de Wilkinson) Vocabulaire plus intuitif 2 Présentation du package graphique ggplot2

  4. 1ère fonction de base : qplot() • x , y(fonctions de variables possibles: log (x), log (y)… • data • main, xlab, ylab, xlim, ylim… (arguments similaires à la fonction plot) • arguments définissant la nature du graphique … 3 Présentation du package graphique ggplot2

  5. 2ème fonction de base : ggplot() • pour aller plus loin que la fonction qplot() • graphique plus complexe 4 Présentation du package graphique ggplot2

  6. Création d’un objet ggplot : 2 arguments 2ème fonction de base : ggplot() • jeu de données • Paramètres esthétiques du graphique : fonction aes() • Graph=ggplot(data, aes(x, y, …)) • Superposition de calque Graph + layer1 + layer2 … 5 Présentation du package graphique ggplot2

  7. geom_x() Les différents types de Layers • position_x() • scale_x() • facet_x() • stat_x() • coord_x() • theme_X() 6 Présentation du package graphique ggplot2

  8. Nuage de points Possibilité d’ajouter une courbe de tendance Layers de type geom_x() qplot(Ne15,maxO3,data=ozone, geom=c("point","smooth"),method=loess,span=1) qplot(T15,maxO3,data=ozone) 7 Présentation du package graphique ggplot2

  9. Boxplot Jitter Layers de type geom_x() qplot(vent,maxO3,data=ozone, geom="boxplot",outlier.colour = "red") qplot(vent,maxO3,data=ozone, geom="jitter",colour=vent) 8 Présentation du package graphique ggplot2

  10. Layers de type geom_x() Histogramme Courbe de densité ,adjust=2 qplot(maxO3,data=ozone,geom="histogram",binwidth=10,fill=vent) qplot(maxO3,data=ozone, geom="density" , fill=pluie, alpha=I(1/5))) 9 Présentation du package graphique ggplot2

  11. Layers de type geom_x() Barplot Série temporelle bar=ggplot(ozone,aes(x=vent)) bar+ geom_bar(fill="grey", colour="black") qplot(date,unemploy/pop, data=economics,geom="line") 10 Présentation du package graphique ggplot2

  12. Layers de type position_() qplot(maxO3, data=ozone, geom="histogram", fill=vent, position="stack",binwidth=25) qplot(maxO3, data=ozone, geom="histogram", fill=vent, position="dodge",binwidth=25) 11 Présentation du package graphique ggplot2

  13. Layers de type position_() qplot(maxO3, data=ozone, geom="histogram", fill=vent, position="fill",binwidth=25) 12 Présentation du package graphique ggplot2

  14. Layers de type scale_x() • Contrôle l’apparence des points et de la légende associée au graphique • Mise en correspondance entre les données et les propriétés esthétiques du geom • Les propriétés esthétiques de ggplot2 : X : position de x Y : position de y Size : taille d’un geom Shape : forme d’un geom Linetype : type de ligne d’un geom Colour/fill : couleur d’un geom Alpha : transparence d’un geom, O=transparent… 1=opaque • Ggplot2 propose 2 différents scales (continus et discrets) pour la plupart des propriétés esthétiques • Graphique: scales représentés 13 Présentation du package graphique ggplot2

  15. Contrôle l’apparence des points et de la légende associée au graphique • qplot(Nombre.annuel.de.jours.de.pluie, Précipitations.de.mai.à.aout, data = pluie, colour = Géographie) Layers de type scale_x() 1 Présentation du package graphique ggplot2

  16. Layers de type scale_x() • Contrôle l’apparence des points et de la légende associée au graphique qplot(Overall.quality, Fruity, data = wine, shape =Soil) Présentation du package graphique ggplot2

  17. Layers de type scale_x() • dsub <- subset(diamonds, x > 5 & x < 6 & y > 5 & y < 6) • (d <- qplot(x, y, data=dsub, colour=z)) • d + scale_colour_gradient(limits=c(3, 4), low="red", high="white") 14 Présentation du package graphique ggplot2

  18. Layers de type facet_x() • Le principe : diviser le jeu de données en sous ensembles • Cela facilite la comparaison de sous groupes d’un jeu de données. • Selon si on veut le facteur en ligne ou en colonne syntaxe différente • facets = facteur ~ . produira un graphique multiple en lignes • facets = . ~ facteur produira un graphique multiple en colonnes 15 Présentation du package graphique ggplot2

  19. Layers de type facet_x() • qplot(Nombre.annuel.de.jours.de.pluie, data = pluie, facets = Géographie ~ ., geom = "histogram") • qplot(Nombre.annuel.de.jours.de.pluie, data = pluie, facets = . ~ Géographie, geom = "histogram") 16 Présentation du package graphique ggplot2

  20. Layers de type facet_x() ggplot() + geom_boxplot(data=d,mapping=aes(x=opt, y=time, color=opt)) ggplot() + facet_wrap(~benchmark) + geom_boxplot(data=d, mapping=aes(x=opt, y=time, color=opt)) 17 Présentation du package graphique ggplot2

  21. places the panels in a grid with one row for each gc and one column for each benchmark. Layers de type facet_x() ggplot() + facet_grid(gc~benchmark) + geom_boxplot(data=d, mapping=aes(x=opt, y=time, color=opt)) 18 Présentation du package graphique ggplot2

  22. transformation statistiques des données avant graphique Layers de type stat_x() graph=ggplot(cochon, aes(x=Sexe, y=Race)) graph+stat_sum(aes(group=1)) 19 Présentation du package graphique ggplot2

  23. transformation statistiques des données avant de faire le graphique Layers de type stat_x() Graph=qplot(Sexe, Lipidesg, data=cochon) graph+stat_summary(fun.data="mean_cl_normal", colour="red") 20 Présentation du package graphique ggplot2

  24. modification du système des coordonnées Layers de type coord_x() graph=ggplot(ozone, aes(vent, fill=vent))+geom_bar() coord_trans() graph+coord_flip() jdd = data.frame(a = abs(rnorm(26)),letters) graph = ggplot(jdd,aes(a,letters)) + geom_point() graph + coord_trans(x = "log10") 21 Présentation du package graphique ggplot2

  25. graph=ggplot(ozone, aes(x=factor(1), fill=vent))+geom_bar() +coord_polar(theta=« y ») Layers de type coord_x() 22 Présentation du package graphique ggplot2

  26. Permet d’améliorer l’apparence globale des graphiques en modifiant les couleurs de fond Layers de type theme_x() graph=ggplot(ozone, aes(maxO3, fill=vent))+geom_bar() theme_update(plot.background = theme_rect(fill = "yellow")) graph+theme_gray() graph+theme_bw() 23 Présentation du package graphique ggplot2

  27. Exemples d’utilisation graph= ggplot(nba.m, aes(variable, Name)) + geom_tile(aes(fill = rescale), + colour = "white") + scale_fill_gradient(low = "white", + high = "steelblue")) 24 Présentation du package graphique ggplot2 Source : learnr (http ://learnr.wordpress.com/)

  28. Exemples d’utilisation par David Kahle (RiceUniversity) https ://github.com/hadley/ggplot2/wiki 24 Présentation du package graphique ggplot2

  29. Conclusion • graphiques plus design et plus complexes • code plus intuitif • graphique = objet 25 Présentation du package graphique ggplot2

  30. Merci de votre attention !

  31. Références • http://docs.ggplot2.org/current/ • http://ggplot2.org/ • https://github.com/hadley/ggplot2/blob/master/R/aes.r • http://rug.mnhn.fr/semin-r/PDF/semin-R_ggplot2_JSueur_200510.pdf • http://rug.mnhn.fr/semin-r/PDF/INED-SFdS-MNHN_Sueur_280411.pdf • http://www.columbia.edu/~cjd11/charles_dimaggio/DIRE/resources/R/ggplotTutorial.pdf • http://www.ceb-institute.org/bbs/wp-content/uploads/2011/09/handout_ggplot2.pdf

More Related