[R] Faire une carte par points avec R
Voici ci-dessous le code R pour réaliser une carte en points à partir d’un fond de carte et d’une donnée quantitative absolue.
# VARIABLES
mygeom<-“nuts3_2006.shp”
mydata<-“data_nuts3.csv”
myvar<-“pop_t_2008”
nb<-100 # Un point vaut nb units
mygeom<-“nuts3_2006.shp”
mydata<-“data_nuts3.csv”
myvar<-“pop_t_2008”
nb<-100 # Un point vaut nb units
library(maptools)
setwd(“/home/nlambert/Documents/R/carto”)
list.files()fdc <- readShapeSpatial(mygeom)
donnees<-read.csv(mydata ,header=TRUE,sep=”\t”,dec=”,”,encoding=”latin1″,)
colnames(fdc@data)[1]<-“id”
names(donnees)[1]<-“id”
fdc@data <- data.frame(fdc@data, donnees[match(fdc@data[,”id”], donnees[,”id”]),])
fdc@data<-data.frame(fdc@data$id,fdc@data[,myvar])
colnames(fdc@data)<-c(“id”,”var”)
fdc@data$var[is.na(fdc@data$var)] <- 0
fdc@data$nbdots <-as.integer(fdc@data$var/nb)
list.files()fdc <- readShapeSpatial(mygeom)
donnees<-read.csv(mydata ,header=TRUE,sep=”\t”,dec=”,”,encoding=”latin1″,)
colnames(fdc@data)[1]<-“id”
names(donnees)[1]<-“id”
fdc@data <- data.frame(fdc@data, donnees[match(fdc@data[,”id”], donnees[,”id”]),])
fdc@data<-data.frame(fdc@data$id,fdc@data[,myvar])
colnames(fdc@data)<-c(“id”,”var”)
fdc@data$var[is.na(fdc@data$var)] <- 0
fdc@data$nbdots <-as.integer(fdc@data$var/nb)
dots<-dotsInPolys(fdc, as.integer(fdc@data$nbdots),f = “random”)
plot(fdc,col=”#CCCCCC”,border=”white”)
plot(dots, pch=20, coll=”black”,add=TRUE,cex=0.01)
plot(fdc,col=”#CCCCCC”,border=”white”)
plot(dots, pch=20, coll=”black”,add=TRUE,cex=0.01)