使用R语言绘制标准的中国地图和世界地图

在日常的学习和生活中,有时我们常常需要制作带有国界线的地图。这个时候绘制标准的国家地图就显得很重要。目前国家标准地图服务系统向全社会公布的标准中国地图数据,是最权威的地图数据。

今天介绍的R包"ggmapcn",就是基于最新公布的地图数据制作的(审图号为:GS(2024)0650号)

ggmapcn是基于ggplot框架开发的,语法简洁方便,用来绘制中国地图很方便。我们首先需要下载这个包:

复制代码
devtools::install_github("Rimagination/ggmapcn", force = TRUE)

中国地图绘制

下面我们就可以直接绘图,这里有个很方便的就是开发者将地图投影默认为Azimuthal Equidistant投影。展示效果很好。

R 复制代码
library(ggmapcn)
ggplot() +    
  geom_mapcn() +    
  theme_minimal()

后面我们可以根据具体需求进行调整,比如展示市级和县级行政区。

R 复制代码
ggplot() + 
  geom_mapcn(admin_level = "city") + 
  theme_minimal()
# 如果想显示县级行政区:只需要把admin_level 参数的值改为 "county" 就行

如果想只显示特定省份,只需要写下面的代码就行:

R 复制代码
ggplot() + 
  geom_mapcn(filter_attribute = "name_en", filter = c("Jiangxi"), fill = "#FADED3") + 
  theme_minimal()

世界地图的绘制

R 复制代码
ggplot() + 
  geom_world() + 
  theme_minimal()

我们可以调整投影,适应不同的需求:

R 复制代码
ggplot() + 
  geom_world(crs = "+proj=moll") + 
  theme_minimal()

总的来说,这个R包对于绘制带有国界线的标准地图非常方便,大家可以自己去尝试一下。以上就是今天的内容,如果觉得有用,请多多支持转发!

相关推荐
2601_9620715712 小时前
类变量和全局变量的隔离性有什么区别?
java·开发语言·jvm
海绵宝宝转agent12 小时前
LeetCode100 LRU缓存思路讲解
java·开发语言·缓存
AC赳赳老秦13 小时前
OpenClaw 与 FineBI 联动方案:公开数据自动采集与实时业务分析看板实践
大数据·开发语言·python·php·finebi·deepseek·openclaw
通信瓦工13 小时前
OCP 冷却环境与冷却剂分配单元(CDU)子项目
java·开发语言
坤坤子吖13 小时前
Python基础语法学习:函数
开发语言·笔记·python·学习
言乐613 小时前
Python体现逻辑回归和决策树的区别
开发语言·python·算法·决策树·逻辑回归
LOVE️YOU13 小时前
Python 类与对象的核心逻辑:从 self、cls 到点号、括号与链式调用
开发语言·python
顶点多余13 小时前
C/C++常见面试题
开发语言·c++
(Charon)13 小时前
【C++面试】右值引用与移动语义:std::move到底做了什么
开发语言·c++
TheITSea13 小时前
JavaScript Web APIs
开发语言·前端·javascript