Skip to content
This repository has been archived by the owner on Nov 9, 2020. It is now read-only.
/ ChinaMapData Public archive

Easy-to-use standard China Map Data for R

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

TianyiShi2001/ChinaMapData

Repository files navigation

ChinaMapData

ChinaMapData使绘制标准中国地图更容易!此地图包含南海诸岛和台湾省,重庆市和四川省之间也划清了界限。推荐配合ggplot2使用。

library(ChinaMapData)
library(ggplot2)
china_map_load(1) %>% 
  ggplot(aes(long, lat, group=group))+ 
  geom_polygon(fill='#D11A2D')+
  coord_map('polyconic')

安装

因为目前功能还很简陋,未来还会有较大改动,所以还是先不打扰CRAN了。如果想体验,可以通过devtools安装最新开发版本:

# install.packages("devtools")
devtools::install_github("TianyiShi2001/ChinaMapData")

快速上手

源地图数据在china_map中,你可以直接获取:

library(ChinaMapData)
china_map %>% head
#> # A tibble: 6 x 4
#>   province  long   lat group
#>   <chr>    <dbl> <dbl> <chr>
#> 1 黑龙江省  121.  53.3 0.1  
#> 2 黑龙江省  121.  53.3 0.1  
#> 3 黑龙江省  122.  53.3 0.1  
#> 4 黑龙江省  122.  53.3 0.1  
#> 5 黑龙江省  122.  53.3 0.1  
#> 6 黑龙江省  122.  53.3 0.1

可见经纬度的精确度很高。虽然可以直接用来绘图,但是速度会较慢,因此提供了一个帮助函数,china_map_load()来读取低精度的数据。唯一一个参数为小数点后保留的位数。如精确到小数点后2位:

china_map_load(2)

如果你不喜欢省级行政区的全称,或是需要翻译成其他语言,可用translate_province函数(如果这里不提供参数,会把所有语言的全称与简称合并进来):

china_map_load(2) %>% translate_province('cn_short') %>% head(3)
#> # A tibble: 3 x 4
#>   province  long   lat group
#>   <chr>    <dbl> <dbl> <chr>
#> 1 黑龙江    121.  53.3 0.1  
#> 2 黑龙江    122.  53.3 0.1  
#> 3 黑龙江    122.  53.3 0.1

当然,支持单字简称(与车牌号兼容)!

china_map_load(2) %>% translate_province('cn_abbr') %>% slice(1, 10000, 50000)
#> # A tibble: 3 x 4
#>   province  long   lat group
#>   <chr>    <dbl> <dbl> <chr>
#> 1 黑        121.  53.3 0.1  
#> 2 蒙        118.  49.8 1.1  
#> 3 苏        121.  32.6 202.1

使用ggplot绘制地图超级简单!

china_map_load(1) %>% 
  translate_province('en_short') %>% 
  ggplot(aes(long, lat, group=group, fill=province))+ 
  geom_polygon()+
  coord_map('polyconic')

注意要提供group=group这个参数给aes。地图是用很多个多边形呈现的。若要描述多个多边形,不仅需要坐标,还需要分组。通过省份分组是不行的,因为沿海省份有附属岛屿,因此一个省份对应多个多边形。

About

Easy-to-use standard China Map Data for R

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages