R语言| 使用REmap绘制超炫酷的地图

浏览: 2661

  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)

结果如下:

0.gif

二. 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标记线主题
geoDatamarkLine和markPoint格式的geoData类似于get geo position()
markLineTheme标记点的主题

例子:

geoData  = get_geo_position(unique(demoC[demoC==demoC]))
remapB(markLineData = demoC,geoData = geoData)

Clipboard Image.png

三.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标记线主题
geoDatamarkLine和markPoint格式的geoData类似于get geo position()
markLineTheme标记点的主题

例子:

data = data.frame(country = mapNames("world"),
                  value = 5*sample(178)+200)
out = remapC(data,maptype = "world",color = 'skyblue')
plot(out)

Clipboard Image.png

我们可以通过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


例子:

Clipboard Image.png

R语言中文社区.jpg

推荐 1
本文由 R语言中文社区 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册