recharts 力导向布局图

一、参数说明
echartr(data, x, , , , , )
recharts 力导向布局图_第1张图片
参数说明

● 数据结构:
● 矩阵模式: 一个数据框,其中一列为节点名,余下的是一个矩阵。将节点名赋值给x, 矩阵赋值给y。
● 节点/联结模式:一个节点数据框[x, NA, series, weight]和一个联结数据框[x, x1, relation, value]。用rbind将两者合并。如果未提供节点数据框,recharts会基于联结数据框自动构建。相应地,提供[x, x1, series/relation, weight/value]数据框。
● 力导向布局图和和弦图可通过工具箱按钮快速切换。

二、数据准备:
grpmtx <- matrix(c(11975,5871,8916,2868,1951,10048,2060,6171,8010,16145,8090,8045,1013,990,940,6907),
                 byrow = TRUE, nrow = 4)
grpmtx <- as.data.frame(grpmtx)
names(grpmtx) <- paste0('Group',1:4)
grpmtx$Name <- paste0('Group',1:4)
knitr::kable(grpmtx, align=c('lllll'))
三、节点Node和联结Link模式
str(yuNetwork)

yuNetwork数据集包含一个节点数据框(nodes)及一个联结数据框(links)。可以合并为一个数据框。
● nodes节点:
○ name: 节点名称
○ series: 节点所属数据系列
○ value: 节点的重要性分值
● links联结:
○ source和target: 定义了联结的方向
○ relation: 联结的名称
○ weight: 联结的重要性分值

nodes <- cbind(yuNetwork$nodes[,1],NA,yuNetwork$nodes[,2:3],stringsAsFactors=FALSE)
names(nodes) <- names(yuNetwork$links)
yu <- rbind(yuNetwork$links,nodes,stringsAsFactors=FALSE)
四、图表展现
1. 曲线联结:

设type为’force’

echartr(yu, c(source,target), weight, relation, type='force') %>%
 setTheme(palette=c('tan3','green3','green2','lawngreen','olivedrabl'))
recharts 力导向布局图_第2张图片
yu曲线联结图
2. 直线联结图

设type为’force_line’

echartr(grpmtx, Name, c(Group1, Group2, Group3, Group4),type='force_line')
recharts 力导向布局图_第3张图片
grpmtx直线联结图
echartr(yu, c(source,target), weight, relation, type='force_line') %>%
  setTheme(palette=c('tan3','green3','green2','lawngreen','olivedrabl'))
recharts 力导向布局图_第4张图片
yu直线联结图
3. 增加时间轴
echartr(deutsch, c(club,player), weight, role, t=year, type='force', sub='arrow')
recharts 力导向布局图_第5张图片
deutsch时间轴力导向布局图

更多功能请戳官方链接:madlogos.github.io/recharts/Basic_Plots_01_Scatterplot_cn.html#-en

你可能感兴趣的:(recharts 力导向布局图)