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绘制超炫酷的地图