Trucs pour LaTeX & R

Pyramide des âges & ggplot2

jeudi 1er février 2018 par Philippe MICHEL

Partons d’un data.frame nommé cas contenant au moins les deux rubriques :

  • age numérique
  • sexe factorielle à deux niveaux « H » & « F »

Et traçons la pyramide des âges soit un barplot horizontal distinguant les hommes des femmes.
Tout d’abord créons une variable factorielle contenant les âges classés par dizaines que nous appellerons cut.age :

  1. cas$cut.age <- cut(cas$age,seq(0,100,10))

Puis commençons à tracer notre graphique avec les dames en rose & les messieurs en bleu (quelle originalité !).
Comme le graphique est pivoté à l’horizontale les axes sont inversés & les réglages de l’axe de y sont sur l’ordonnée.

  1. gg <-  ggplot(cas) +
  2. aes(x=cut.age,fill=sexe) +
  3. geom_bar(data = subset(cas,sexe=="F"),aes(y=..count..*(-1))) + # les valeurs deviennent négatives
  4. geom_bar(data = subset(cas,sexe=="H")) +
  5. scale_fill_manual(values = c("pink","blue")) + # Un peu de couleur
  6. scale_y_discrete(limits=c(-100,0,100,200),labels=c(100,0,100,200)) + # étiquettes pour l'axe des x, à modifier selon vos données.
  7. coord_flip()
  8. plot(gg)

Télécharger

Volontairement je n’ai pas modifier le graphisme de base en jouant sur les polices, les traits etc. pour garder un code simple. Vous trouverez des exemples ici pour fignoler la présentation.


Accueil | Contact | Plan du site | | Statistiques du site | Visiteurs : 358 / 128687

Suivre la vie du site fr  Suivre la vie du site R  Suivre la vie du site ggplot2   ?    |    titre sites syndiques OPML   ?

Site réalisé avec SPIP 3.2.1 + AHUNTSIC

Creative Commons License