if (require(wpp2019)==FALSE) { install.packages("wpp2019", dep=TRUE) library(wpp2019) } if (require(mapdata)==FALSE) { install.packages("mapdata", dep=TRUE) library(mapdata) } if (require(pyramid)==FALSE) { install.packages("pyramid", dep=TRUE) library(pyramid) } pdf("wpp2019s.pdf", width=16, height=8) par(family="sans", las=1) # e0 layout(t(1:2)) data(e0M) data(e0F) plot(e0M[, "2015-2020"], e0M[, "2015-2020"]-e0M[, "2010-2015"], xlim=c(40,100), ylim=c(-2, 10)) sgM <- subset(e0M, e0M[, "2015-2020"]-e0M[, "2010-2015"] < 0) exM <- subset(e0M, e0M[, "2015-2020"]-e0M[, "2010-2015"] >= 5) grid() text(sgM[, "2015-2020"], sgM[, "2015-2020"]-sgM[, "2010-2015"], sgM$name, pos=4, col="red") text(exM[, "2015-2020"], exM[, "2015-2020"]-exM[, "2010-2015"], exM$name, pos=4) plot(e0F[, "2015-2020"], e0F[, "2015-2020"]-e0F[, "2010-2015"], xlim=c(40,100), ylim=c(-2, 10)) sgF <- subset(e0F, e0F[, "2015-2020"]-e0F[, "2010-2015"] < 0) exF <- subset(e0F, e0F[, "2015-2020"]-e0F[, "2010-2015"] >= 5) grid() text(sgF[, "2015-2020"], sgF[, "2015-2020"]-sgF[, "2010-2015"], sgF$name, pos=4, col="red") text(exF[, "2015-2020"], exF[, "2015-2020"]-exF[, "2010-2015"], exF$name, pos=4) # migration layout(1) data(popMT) data(popFT) data(migration) popT2020 <- popMT[, "2020"] + popFT[, "2020"] popT2015 <- popMT[, "2015"] + popFT[, "2015"] increase <- (popT2020 > popT2015) posnetmig <- (migration[, "2015-2020"] > 0) groupcols <- ifelse(increase, ifelse(posnetmig, "pink", "purple"), ifelse(posnetmig, "navy", "cyan")) print(groupcols) # map("world", regions=popMT$name, fill=TRUE, col=groupcols) # ?? Strange results ?? name mismatch # pyramid data(popM) data(popF) UkraineM2020 <- subset(popM, name=="Ukraine")[, c("age", "2020")] UkraineF2020 <- subset(popF, name=="Ukraine")[, c("age", "2020")] Ukraine2020 <- data.frame(M=UkraineM2020[, "2020"], F=UkraineM2020[, "2020"], A=UkraineM2020$age) pyramid(Ukraine2020, Laxis=0:4*500, Cadj=-0.01, Cgap=0.2, main="Population of Ukraine in 2020 (wpp2019)") dev.off()