Géographie
Une seule application géographique (ci-dessous) est actuellement disponible sur ce site à l'exception de la cartographie.
Cette application est la réalisation de pyramide des âges.
Pyramide des âge avec le logiciel R (exemple)
Voici une pyramide des âges réalisée avec le logiciel R
1. Les données à remplacer par les siennes
ages = c("0-14","15-29","30-44","45-59","60-74","75-89","90-") # catégories d'âges
males = c(707,684,620,834,692,351,16)
females = c(664,702,739,959,745,593,49)
# Les deux lignes ci-dessous (optionnelles) permettent de convertir le nombre d'habitants en %
males = males/sum(males)*100
females = females/sum(females)*100
2. Tracer la pyramide
# Attribuer un nom aux tranches d'âges
names(males) <- ages
install.packages("pyramid") w# librairie nécessaire pour pouvoir tracer la pyramide
library(pyramid)
# Affichage
pyramids(Left=males,Llab="Hommes",Right=females,Rlab="Femmes",Laxis=c(0,5,10,15,20,25),main="Pyramide des âges de \n Coulounieix-Chamiers",Ldens=5, Rdens=10,Lcol="blue", Rcol = "red")
# Avec :
# Left : données de gauche et Right : données de droite
# Rlab : intitulé de l'axe de droite et Rlab pour celui de gauche
# Rcol et Lcol pour la couleur des barres
# Rdens et Ldens pour avoir des hachures plus ou moins dense (Rdens = 0 si on ne veut pas de hachures)
# Laxis : découpe de l'axe des x et nombre de graduations
# main : le titre - un \n permet d'imposer un retour à la ligne
# GL=FALSE permet de ne pas afficher de traits verticaux...
3. Tracer les étiquettes (annotations) grâce à la fonction maison nommée labelling
# Coller la fonction labelling : ls nb de mâles et femelles doivent être en %
labelling = function(males, females, decimales = 0, left = -1.1, right = 1.1, cex=0.7) {
percent = paste(round(males[1],decimales)," %")
positiony = 1/length(males)-1/(length(males)*2)
positionx = left
nb = 0:(length(males)-2)
for (i in seq(along=nb)) {
temp = paste(round(males[i+1],decimales)," %")
percent = c(percent,temp)
positionx = c(positionx,left)
positiony = c(positiony,((i*2+1)/(length(males)*2)))
}
nb = 1:(length(males))
for (i in seq(along=nb)) {
temp = paste(round(females[i],decimales)," %")
percent = c(percent,temp)
positionx = c(positionx,right)
positiony = c(positiony,((i*2-1)/(length(males)*2)))
}
text(positionx,positiony,percent,cex=cex)
}
# Tracer les étiquettes
labelling(males, females, 1, -1.15, 1.15)
Mise à jour de la page juin 2018