R语言:使用REmap绘制超炫酷的地图
REmap这个包是通过调用百度地图API的一个程序包,与Google的ggmap包相比,不用翻墙就可以使用。其函数主要有:remap(),remapB()、remapC()、remapH()四个。该程序包目前要github网站上,因此我们需要从github上面下载安装。
install.packages("devtools")#如果安装了就不需要这步
library(devtools)
install_github('lchiffon/REmap')
一. remap()
这个函数可以创建一个remap()函数对象,然后再由plot()函数输出并在浏览器中打开。
函数原型:
remap(mapdata, title = "", subtitle = "", theme = get_theme("Dark"))
|
参数 |
含义 |
|
mapdata |
数据集,每行数据表示从出发点到终点 |
|
title |
标题 |
|
subtitle |
副标题 |
|
theme |
主题,背景颜色 |
set.seed(125) out = remap(demoC,title = "REmap",subtitle = "theme:Dark") plot(out)
结果如下:
二. remapB()
这个函数可以创建remapB()对象,通过调用百度地图API绘制出一个可以通过鼠标进行伸缩的地图。
函数原型:
remapB(center = c(104.114129,37.550339),
zoom = 5,
color = "Bright",
title = "",
subtitle = "",
markLineData = NA,
markPointData = NA,
markLineTheme = markLineControl(),
markPointTheme = markPointControl(),
geoData = NA)
| 参数 | 含义 |
| center | 设置地图中心,可以通过get_city_coord获取 |
| zoom | 表示显示地理范围大小,数字越小,表示的范围越大 |
| color | 整体颜色 |
| title | 标题 |
| subtitle | 副标题 |
| markLineData | 标记线数据 |
| markPointData | 标记点数据 |
| markLineTheme | 标记线主题 |
| geoData | markLine和markPoint格式的geoData类似于get geo position() |
| markLineTheme | 标记点的主题 |
例子:
geoData = get_geo_position(unique(demoC[demoC==demoC])) remapB(markLineData = demoC,geoData = geoData)
三.remapC()
这个函数类似remap()函数,创建一个remap()函数对象,然后再由plot()函数输出并在浏览器中打开,只不过他俩对数据要求不一样,remapC()要求数据一列为地名,一列为数值。
函数原型:
remapC(data,
maptype = 'china',
markLineData = NULL,
markPointData = NULL,
color = c('#1e90ff','#f0ffff'),
theme = get_theme("Bright"),
title = "",
subtitle = "",
markLineTheme = markLineControl(),
markPointTheme = markPointControl(),
geoData = NA,
mindata = NA,
maxdata = NA)
|
参数 |
含有 |
| data | 地名和地理信息值 |
| maptype | 地图类型,比如“China”,“world”以及省名。 |
| markLineData | 标记线数据 |
| markPointData | 标记点数据 |
| color | 颜色向量 |
| theme | 通过get_theme创建一个主题 |
| title | 标题 |
| subtitle | 副标题 |
| markLineTheme | 标记线主题 |
| geoData | markLine和markPoint格式的geoData类似于get geo position() |
| mindata | |
| maxdata | |
| markLineTheme | 标记点的主题 |
例子:
data = data.frame(country = mapNames("world"),
value = 5*sample(178)+200)
out = remapC(data,maptype = "world",color = 'skyblue')
plot(out)
我们可以通过head()函数来查看数据的格式:
head(data) country value 1 Afghanistan 675 2 Angola 935 3 Albania 1075 4 United Arab Emirates 735 5 Argentina 365 6 Armenia 295
四. remapH()
remapH()函数是用来绘制热力图的。该函数是通过创建remapH对象,然后通过浏览器输出。
函数原型:
remapH(data,
maptype = 'china',
theme = get_theme("Dark"),
blurSize = 30,
color = c('blue', 'cyan', 'lime', 'yellow', 'red'),
minAlpha = 0.05,
opacity = 1,
...)
|
参数 |
含义 |
| data | 数据框数据包含经度,维度,密度 |
| maptype | 地图类型,比如“China”,“world”以及省名。 |
| theme | 通过get_theme创建一个主题,设置地图颜色 |
| blurSize | 设置点的模糊程度 |
| color | 颜色向量 |
| minAlpha | 如果统一值小于minAlpha,则rempaH将设置为minAlpha,以确保小数据值也可以在图表上可见。 |
| opacity | 地图的不透明度,默认为1 |
例子:
转载请注明:数据分析 » R语言:使用REmap绘制超炫酷的地图




