Une pyramide des âges avec R

lundi 13 juillet 2009, par jps29

Voici une pyramide des âges faite avec R :

JPEG - 75.7 ko

Et le script est le suivant :

pyramide <- function(data,laxis,raxis) {
   par(cex=0.8)
   a<-as.character(data$A); m<-data$M; f<-data$F
   ff<- -f
   ll<- -laxis
   op<-par(mfrow=c(1,2),omi=c(0,0,0,0),ps=18,xaxt="s",cex=0.8)

   par(mar=c(4,2,3,1.5))

   barplot(ff,
              horiz=T,main="Femmes",
              space=0,
              col="grey",
              xlim=c(min(ll),0),
              axes=F,
              axisnames=F,
              cex.axis =0.7,
              xaxt="n")

   axis(1,
          at=ll,
          labels=formatC(laxis,format="d"),
          cex.axis =0.7)

   par(mar=c(4,2,3,2), xaxt="s")

   barplot(m,
           horiz=T,
           main="Hommes",
           space=0,col="grey",
           xlim=c(0,max(raxis)),
           axes=T,axisnames=T,
           cex.axis =0.7)

    axis(2,
           at=c(1:NROW(a))-0.5,
           labels=formatC(a,format="s"),
           pos=-2,
           las=1,tcl=0,
           lty=0,
           cex.axis =0.5)
    par(op)
}


pyramideages<-read.csv("pyramide.csv", sep=";", row.names=1, header=T)

ages <- rownames(pyramideages)
l <-c(40000,30000,20000,10000,0)
r <-c(0,10000,20000,30000,40000)
x <- data.frame(A<-ages, M<-pyramideages[,1], F<-pyramideages[,2])

pyramide(x,l,r)

Le script d’origine est ici.

J’ai une alerte mais je ne sais pas comment y remédier et comme le résultat me convient, j’ai laissé tomber. Je suis preneur d’une solution.

Un message, un commentaire ?

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message