This repository has been archived by the owner on Nov 9, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.Rmd
86 lines (62 loc) · 2.47 KB
/
README.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
---
output: github_document
---
<!-- README.md is generated from README.Rmd. Please edit that file -->
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# ChinaMapData
<!-- badges: start -->
<!-- badges: end -->
**ChinaMapData**使绘制标准中国地图更容易!此地图包含南海诸岛和台湾省,重庆市和四川省之间也划清了界限。推荐配合**ggplot2**使用。
```{r message=FALSE}
library(ChinaMapData)
library(ggplot2)
china_map_load(1) %>%
ggplot(aes(long, lat, group=group))+
geom_polygon(fill='#D11A2D')+
coord_map('polyconic')
```
## 安装
<!-- You can install the released version of ChinaMapData from [CRAN](https://CRAN.R-project.org) with:
``` r
install.packages("ChinaMapData")
```
And the development version from [GitHub](https://github.com/) with: -->
因为目前功能还很简陋,未来还会有较大改动,所以还是先不打扰CRAN了。如果想体验,可以通过**devtools**安装最新开发版本:
``` r
# install.packages("devtools")
devtools::install_github("TianyiShi2001/ChinaMapData")
```
## 快速上手
源地图数据在`china_map`中,你可以直接获取:
```{r example}
library(ChinaMapData)
china_map %>% head
```
可见经纬度的精确度很高。虽然可以直接用来绘图,但是速度会较慢,因此提供了一个帮助函数,`china_map_load()`来读取低精度的数据。唯一一个参数为小数点后保留的位数。如精确到小数点后2位:
```{r eval=FALSE}
china_map_load(2)
```
如果你不喜欢省级行政区的全称,或是需要翻译成其他语言,可用`translate_province`函数(如果这里不提供参数,会把所有语言的全称与简称合并进来):
```{r}
china_map_load(2) %>% translate_province('cn_short') %>% head(3)
```
当然,支持单字简称(与车牌号兼容)!
```{r}
china_map_load(2) %>% translate_province('cn_abbr') %>% slice(1, 10000, 50000)
```
使用ggplot绘制地图超级简单!
```{r}
china_map_load(1) %>%
translate_province('en_short') %>%
ggplot(aes(long, lat, group=group, fill=province))+
geom_polygon()+
coord_map('polyconic')
```
注意要提供`group=group`这个参数给`aes`。地图是用很多个多边形呈现的。若要描述多个多边形,不仅需要坐标,还需要分组。通过省份分组是不行的,因为沿海省份有附属岛屿,因此一个省份对应多个多边形。