R绘制地图的话,大多数用到的包都是maptools,用来读取phd文件,phd文件需要自己提前下载到工作目录,但是大多数phd文件都不能精确到市区。只能绘制声级,国家级和世界地图。
本文以武汉是举例。首先在下列网站地图选择器/tools/atlas/index.html找到要绘制的区域,注意不能精确到具体街道,并选择下载json文件。
接着将保存的json文件转换成phd文件,推荐使用mapshaper/Export导出Shapefile格式(phd)。
然后就可以在R中操作了,具体代码如下
#BiocManager::install("sf")library(sf)library(ggplot2)library(showtext)options(scipens=50)showtext_auto(enTable = T)dat=sf::read_sf("./wuhan.shp")p=ggplot(data = dat,aes(x=xf,y = yf,fill = name))+geom_sf()+theme_classic()+geom_text(aes(x=xf,y=yf,label = name))+theme(axis.text.x = element_text(size = 20),axis.text.y = element_text(size = 20),legend.position = "none")+xlab("")+ylab("")+scale_fill_manual(values = colors)ggsave(p,filename = "wuhan.pdf",width = 20,height = 18)
注意phd文件所在目录必须是英文命名,xf,yf代表地区所在经纬度,具体经纬度可以谷歌,百度查询。
如果觉得《R语言绘制地图》对你有帮助,请点赞、收藏,并留下你的观点哦!