前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言可视化——REmap(路径图)

R语言可视化——REmap(路径图)

作者头像
数据小磨坊
发布2018-04-11 15:27:29
1.6K0
发布2018-04-11 15:27:29
举报
文章被收录于专栏:数据小魔方数据小魔方

今天紧接昨天的内容,跟大家分享如何使用REmap函数制作路径图。

路径图所需要的数据结构非常简单,两列数据,左侧是起点,右侧是终点,并且每一行的终点是下一行的起点,这样最终才可以制作出连接在一起的路径图。

首先我们来构造所需的数据:

起点数据:

代码语言:javascript
复制
origin<- c("beijing","shijiazhuang","zhengzhou","hefei","nanjing","济南","dalian") 

终点数据:

代码语言:javascript
复制
destination<- c(origin[-1],origin[1]) #将起点数据首尾互换,并构造终点数据

将终点数据、起点数据合并为数据框格式的作图数据:

代码语言:javascript
复制
map_data<- data.frame(origin,destination) 

绘图:

代码语言:javascript
复制
map_out1<- remap(mapdata=map_data,        

          title ="我是主标题",
          subtitle ="我是副标题",
          theme =get_theme(theme='Dark')
          )
plot(map_out1)  #在web上展示图形

上面的例子中,为了使得路径图首尾相连,终点数据是起点数据调换首尾行而得到的。

那么如果不要求路径图首尾相连的话可以设置如下结构:

代码语言:javascript
复制
map_data1<-map_data[-7,]
map_out2<- remap(mapdata=map_data1,        
          title ="我是主标题",
          subtitle ="我是副标题",
          theme =get_theme(theme='Dark')
          )
plot(map_out2)  #在web上展示图形

这种路径图的形式非常适合用于表达带有很多中间节点的动态路线。

当然如果你也可以将数据源设置成两条毫不相干的路线:

代码语言:javascript
复制
data1<-c("西安","zhengzhou","shijiazhuang","beijing","shenyang","changhcun","哈尔滨") 
data2<-c("nanyang","wuhan","changsha","南昌","guangzhou","南宁","贵阳")
origin<-c(data1[1:6],data2[1:6])
destination<-c(data1[2:7],data2[2:7])
map_data1<- data.frame(origin,destination) 
代码语言:javascript
复制
map_out3<- remap(mapdata=map_data1,        
          title ="我是主标题",
          subtitle ="我是副标题",
          theme =get_theme(theme='Dark')
          )
plot(map_out3)  

随机生成的线条和气泡颜色看着挺别扭,我们可以将其修改为自定义颜色:

代码语言:javascript
复制
map_out4<- remap(mapdata=map_data1,        
          title ="我是主标题",
          subtitle ="我是副标题",
          theme =get_theme(theme='none',
          lineColor = "white",    
          backgroundColor="black"      
          )
           )
plot(map_out4)  

你可以用这种方法,结合自己的数据来表达多个地域之间的流动方向:比如一打一路、长征、贸易路线、铁路路线图等都非常适合这种表达。

gif效果:

如果想要存储该HTML对象,需要设定临时目录:

代码语言:javascript
复制
setwd("D:/R/Rscript")      #保存图片的位置,不做修改默认为R的工作路径
options(remap.js.web=T)    #动态网页图保存命令
plot(map_out5)             #保存的同时自动调用浏览器窗口
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-10-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据小魔方 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图数据库 KonisGraph
图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档