Bản đồ Việt Nam trong R
Lấy dữ liệu
Dữ liệu bản đồ Việt Nam cho R được lấy từ trang http://gadm.org/ . (Trên trang này còn có rất nhiều bản đồ khác.)
Hoặc lấy trực tiếp trong R:
con <- url ( "http://biogeo.ucdavis.edu/data/gadm2/R/VNM_adm2.RData" ) print ( load ( con )) close ( con )
Sau khi lấy về (ngày 21/11/2014) thì thấy bản đồ này là bản đồ 64 tỉnh, tức bản đồ trước khi Hà Tây sáp nhập vào Hà Nội năm 2008. Vậy là phải thêm bước 2.
Sáp nhập tỉnh
Tải dữ liệu
load ( "./vietnam/maps/VNM_adm2.RData" )
Gọi thư viện cần thiết
libs <- c ( "rgeos" , "maptools" , "sp" ) lapply ( libs , require , character.only = TRUE )
Nhóm và sáp nhập tỉnh
Sáp nhập SpatialPolygons
gadm63.fac <- as.factor ( c ( 1 : 18 , 19 , 18 , 21 : 64 )) gadm63.sp <- unionSpatialPolygons ( gadm , gadm63.fac )
Sáp nhập DataFrame
# Lấy data frame từ gadm gadm63.df <- gadm @ data # Xóa tỉnh "Hà Tây" gadm63.df <- gadm63.df [ -20 , ]
Trộn SP và DF
gadm63 <- SpatialPolygonsDataFrame ( gadm63.sp , gadm63.df )
Kiểm tra
plot ( gadm [ c ( 18 , 20 ),]) plot ( gadm63 [ 10 , ], add = TRUE , border = "red" , lwd = 2 )
Lưu lại dùng sau:
saveRDS ( gadm63 , file = "./vietnam/geo63.rds" )
Bản đồ Việt Nam
geo63 <- readRDS ( "./vietnam/geo63.rds" ) spplot ( geo63 , "ID_1" , main = "63 tỉnh" )
Tải tệp geo63.rds
.