多语言展示
当前在线:152今日阅读:75今日分享:44

通过REmap包画航线图

REmap这个包是通过调用百度地图API的一个程序包,与Google的ggmap包相比,不用翻墙就可以使用。其函数主要有:remap(),remapB()、remapC()、remapH()四个。该程序包目前要github网站上,因此我们需要从github上面下载安装。1.   REmap包是R与echart的对接,在R里调用echart的api直接作图,函数特征更加简单明了,绘图过程更方便快捷,但缺点是若要更加个性化绘图,需要手动修改REmap包源码,而该部分对于没有javascript/css/html基础的人比较晦涩难懂2.   remapH函数:该函数主要用于绘制热力效果图,如在地图上绘制不同密度的热力效果3.   remapC函数:该函数主要用于绘制分块区域热力,如在地图上显示不同省份热力效果4.   remapB函数:该函数主要基于百度地图背景,可作迁徙,通勤效果图5.   markLineControl,markPointControl,get_theme这三个函数主要用于控制在map图上打点,画线,以及主题的各种样式,如颜色,效果,粗细等。
工具/原料
1

R3.20

2

RSTUDIO

方法/步骤
1

一、安装包install.packages('devtools')#如果安装了就不需要这步  library(devtools)  install_github('lchiffon/REmap')

2

二、加载包library(REmap)

3

三、加载数据集data.line<-read.csv(file.choose(),T)#私有数据,需要的联系我

4

dataxian<-data.line[data.line$出发地=='西安',]#选择西安咸阳机场为出发机场d<-dataxian[,c(7,8)]markline_control <-markLineControl(symbol = c('none','arrow'),symbolSize=c(2,4), smooth=T,smoothness=0.2,  effect=F,lineWidth=1,lineType='dashed', color = 'Random')(1) symbol 控制要绘制线条两端形状,第一个为起点,第二个为终点,可选样式有:'pin','circle','rectangle','triangle','diamond','emptyCircle','emptyRectangle','emptyTriangle','emptyDiamond','heart','droplet','pin','arrow','tar'(2)symbolSize 控制上述参数形状大小,同样有两个值(3)smooth 控制线条是否平滑,为T时,smoothness参数才有效(4)smoothness 控制线条的平滑度,为0时是直线(5)effect 控制线条是否呈现动态效果,为T时显示动态效果,需要注意的是当线条过多时effect参数无效,不会显示动效(6)linewidth 控制线条的粗细(7)lineType 控制线条的形状,可选样式有:'solid', 'dotted','dashed'(8)color 控制线条的颜色,不建议在此处设置颜色markpoint_control <-markPointControl(symbol = 'Circle', symbolSize = 10, effect =F,effectType = 'scale')(1)symbol 控制点的形状,可选样式有:'pin''circle','rectangle','triangle','diamond','emptyCircle','emptyRectangle','emptyTriangle','emptyDiamond','heart','droplet','pin','arrow','tar'(2)symbolSize 控制上述参数形状大小(3)effect 控制点是否呈现动态效果,为T时显示动态效果,需要注意的是当点数目过多时effect参数无效,不会显示动效(4)effectType 控制点的动效呈现形式,可选样式有:'scale' ,'bounce'(5)color控制点的颜色,不建议在此处设置颜色geoData  = get_geo_position(unique(d[d==d]))  remapB(center=get_geo_position('西安'),markLineData = d,geoData = geoData,zoom = 5.8,markLineTheme = markline_control,markPointTheme = markpoint_control)

注意事项

zoom的大小需要控制在6以内,不然显示不全

推荐信息