
原创:金小贝 QQ交流:675229288
地图可视化、热力地图、行为轨迹在以LBS为基础的o2o行业很热门,友好方便的交互地图则备受青睐,REmap包是地图可视化工具之一,函数参数设置简单明了,是R与Echarts的对接,使用户可以在R中直接调用Echarts的api接口作图,展现出各种美图。此包由国人开发,地图基于百度地图,所以使用起来相对很方便。同时也存在一些不足,比如有时数据输入时中文汉字地名识别不了,帮助文档里有个别错误,解释与主题不符合等。但瑕不掩瑜,REmap包还是比较推荐的地图可视化工具,希望开发者继续完善。
本文介绍REmap包的安装和基础函数介绍,为以后核心函数的实例操作做准备,基础函数包括mapNames( )、REmapCityGeo、get_city_coord( )、get_geo_position( )、get_theme( )、markLineControl( )、markPointControl( )。在后续文章中会逐个介绍核心函数,包括remap( )、remapB( )、remapC( )、remapH( )。
一、安装
REmap包托管在https://github.com上,可直接在github上加载。启动R,执行以下命令:
library(REmap) #加载
二、基础函数介绍
1、mapNames( ):可提供国家、省份、城市列表
解读:帮助文档中注明mapNames是remapC函数所需要的
2、REmapCityGeo:给出122个城市列表及经纬度
head(REmapCityGeo)
3、get_city_coord( ):返回某个省份或者城市的经纬度
解读:支持中文汉字及拼音,且字母不区分大小写。使用拼音需要注意有时候需要加“市”,比如get_city_coord(‘大同’)没问题, get_city_coord(‘datong’)结果却为NA,需要改为get_city_coord(‘datongshi’)
4、get_geo_position( ):返回一批城市的经纬度数据
lon lat city
解读:以上再次验证了对字母的不敏感,以及支持两种输入,同时注意结果的排序与初始城市顺序不一致,结果是按照一定编码规则排序。5、get_theme( ):设置主题整体颜色,包括各种细节配色,可直接被REmap各函数引用
?get_theme
参数说明:
参数一:theme为总体配色,默认选项有“Dark”、“Bright”、“Sky”、“none”
参数二:lineColor为线条颜色,默认是随机, 也可自行设置,如’red’
参数三:backgroundColor为地图外背景颜色
参数四:titleColor为标题颜色
参数五:borderColor为地图中地域边缘颜色,不同省份、城市的边缘
参数六:regionColor为地域颜色,即地图显示的颜色
参数七:labelShow为逻辑参数,是否显示地域名称,默认为T,即显示,只用于remapC函数
参数八:pointShow为逻辑参数,是否显示地域所在点,默认为F,不显示,只用于remapC函数
参数九:pointColor为pointShow中点的颜色,只用于remapC函数
解读:get_theme( )函数为REmap包中最重要的配置函数,负责整体配色风格的把控。默认theme参数为‘Dark’,也可以选择‘Bright’、‘Sky’改变总体配色,如果使用此三个,则get_theme其他参数则无需设置了。如果需要自己配色,需要将theme设置为‘none’。
get_theme( )配色支持各种格式,如直接颜色名gold、red、blue等,也可以RGB格式#1b1b1b、#FFFFFF、#2E8B57,也可以是rgba(100,149,237,1)格式。RGB颜色查询对照表www.114la.com/other/rgb.htm
需要了解的是有三个参数labelShow、pointShow、pointColor并非通用参数,在remapC函数中可用。
?markLineControl
参数说明:
参数一:symbol为标记样式,具体指线条两端的标记的形状,两个值分别为起点和终点,经过实际使用symbol参数不可修改
参数二:symbolSize为线条两端标记大小,对应symbol参数的两个值,实际上第一个值没用,因为开始标记为none
参数三:smooth为逻辑参数,设置线条是否平滑
参数四:smoothness为平滑度,smooth参数设置为T时有效,体现线条的弧度,减小到0时为直线
参数五:effect为逻辑参数,是否显示动态效果
参数六:lineWidth为线条粗细
参数七:lineType为线条类型,可选有solid(实线)、dotted(点线)、dashed(虚线)
参数八:color为线条颜色
解读:effect参数在线条太多时,动态效果会失效,这时建议设置为FALSE。在remapB( )函数中通过另外一个参数markLineData也可以设置线条颜色,优先级高于color参数。
7、markPointControl( ):remapB和remapC中点的主题设置,可直接传递给markPointTheme参数
markPointControl( symbol = ’emptyCircle’,
参数说明:
参数一:symbol为点样式,可选项none、circle、rectangle、triangle、diamond、emptyCirle、emptyRectangle、emptyTriangle、emptyDiamond、heart、droplet、pin、arrow、star
参数二:symbolSize为点大小
参数三:effect为逻辑参数,是否显示动态效果
参数四:effectType为动态效果样式,可选scale(放大)和bounce(跳动)
参数五:color为点颜色
解读:effect参数在点太多时,动态效果会失效,这时建议设置为FALSE。在remapB( )函数中通过另外一个参数markPointData也可以设置点颜色,优先级高于color参数。
基础函数是实现核心函数调用的基础,核心函数介绍及实例敬请期待下一篇“数据帮:地图可视化REmap包-remap函数及实例”
恭喜你,又看完一篇文章,扫码领个红包吧!