recharts 力導向佈局圖

一、參數說明
echartr(data, x, <y>, <series>, <t>, <type>, <subtype>)

● 數據結構:
● 矩陣模式: 一個數據框,其中一列爲節點名,餘下的是一個矩陣。將節點名賦值給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'))
2. 直線聯結圖

設type爲’force_line’

echartr(grpmtx, Name, c(Group1, Group2, Group3, Group4),type='force_line')
echartr(yu, c(source,target), weight, relation, type='force_line') %>%
  setTheme(palette=c('tan3','green3','green2','lawngreen','olivedrabl'))
3. 增加時間軸
echartr(deutsch, c(club,player), weight, role, t=year, type='force', sub='arrow')

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章