R语言:再谈REmap包
关键词:r语言remap包、R语言迁移图、R语言颜色等级图、R语言热力图、R语言气泡图
之前写过一篇关于Remap的文章,原文链接为:http://www.cdadata.com/17939
但有许多网友都存在不同的问题,在我的微信公众号后台或博客留言,想我请教一些问题。于是我就觉得很有必要在写一篇文章,好好的把Remap这个包好好的给大家介绍一下。
我们都应该知道这个包的主要目的可交互的地图数据可视化的工具,托管在github,现在.这个包是基于Echarts开发的一个包,它本身提供的参数也比较少,也就是说你想绘制很个性更有特点的图像的话,那你就很有必要去学习了解Echarts方面的知识。
1.迁移图
比如说放假了我准备出去玩玩。我先从西安出发,到上海看看东方明珠,再到重庆尝一尝火锅,在成都逛逛宽窄巷子,最后再返回西安吃碗羊肉泡馍。这个行程图就可以用这个包来做。
origin<-c("xi an","shang hai","chong qing","cheng du") destination<-c("shang hai","chong qing","cheng du","xi an") #将上面这两列数据存储在一个数据框里面 dat = data.frame(origin,destination) out = remap(dat,title = "REmap",subtitle = "theme:Dark") plot(out)
在使用remap函数时,它会调用get_geo_position函数来获取坐标。
结果如下;
我们来查看一下dat的数据类型:
不过这个包有一个很严重的问题,就是你输入中文的时候,它有时候无法识别,不过幸好当你输入地名的时候可以使用拼音,也不区分大小写,比如输入西安的时候,你可以输入”xi an”也可以写成”xi
an shi’。
如果你出现类似下面这些错误提示,那就要检查你的位置写的是不是汉字了。
Warning message: In get_geo_position(city_vec) : 北京 not found.上海 not found.重庆 not found.成都 not found.
Warning message: In get_geo_position(city_vec) : ±±¾© not found.
2.颜色等级图
city<-c("上海","重庆","四川","陕西") value<-c(3734,3248,2361,2105) Cdata<-data.frame(city,value) remapC(Cdata,maptype = "China",color = 'skyblue')
结果如下:
数据格式如下:
(数据是随便写的)
如果说我们既想在颜色等级图上面添加迁移图特点的话,那我们就要用到markLineData和markPointData这两个参数,它们默认为NULL。如下例所示:
添加气泡:
remapC(Cdata,maptype = "China",color = 'skyblue',markPointData=dat)
添加箭头:
remapC(Cdata,maptype = "China",color = 'skyblue',markLineData=dat)
如果说既要 有箭头,又要 气泡,那就把这两个参数都加进来。
remapC(Cdata,maptype = "China",color = 'skyblue',markLineData=dat,,markPointData=dat)
热力图
city<-c("xi an","shang hai","chong qing","cheng du") heat<-c(0.9,0.6,0.8,0.7) temp <- get_geo_position(as.vector(city)) #获取坐标 heatdata<-data.frame(temp$lon,temp$lat,heat)
这部分通过get_geo_position()函数获取了坐标,再转化为一个有三列的数据框,分别为经纬度和热度。
热力图绘制如下:
remapH(heatdata,minAlpha = 0.51,title = "Heat Map from REmap")
个人愚见,如有不到之处,希望各位能在评论区多多提意见。
转载请注明:数据分析 » R语言:再谈REmap包_绘制各种图