本次绘图是对《R语言绘制中国地图:着色省份、标注省份名称地图》中基础地图数据缺失(链接失效)的更新,基础地图数据来源《R语言 地图数据更新(来自高德 阿里云)》
声明:仅供于交流学习,不得用于商业和学术期刊中。
(感觉大地图能让大家更充分认识海洋,特别是南海)
代码语言:javascript复制library(ggplot2)
library(sf)
library(geojsonsf)
library(RColorBrewer)
## 通过阿里云获得中国地图
# 地图选择器网址 http://datav.aliyun.com/tools/atlas/index.html
map_china = read_sf("https://geo.datav.aliyun.com/areas_v2/bound/100000_full.json")
# 或
# map_china = read_sf("https://geo.datav.aliyun.com/areas_v3/bound/geojson?code=100000_full")
center <- as.data.frame(do.call(rbind,sapply(map_china$center,as.data.frame)))
colnames(center) <- c("lon","lat")
rownames(center) <- c(map_china$name[1:34])
ggplot()
geom_sf(data=map_china$geometry,aes(fill=factor(map_china$adcode)))
# geom_point(data = center,aes(x=lon,y=lat))
geom_text(data = center,aes(x=lon,y=lat,label=rownames(center)),position = "identity",size=3)
labs(title="地图",subtitle="仅用于代码交流学习n不用于学术和是商业",caption = "reference")
theme(plot.title = element_text(color="red", size=16, face="bold",vjust = 0.1,hjust = 0.5),
plot.subtitle = element_text(size=10,vjust = 0.1,hjust = 0.5),
legend.title=element_blank(),
legend.position = "none",
panel.grid=element_blank(),
panel.background=element_blank(),
axis.text=element_blank(),
axis.ticks=element_blank(),
axis.title=element_blank())