json – R中的可折叠树

前端之家收集整理的这篇文章主要介绍了json – R中的可折叠树前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有兴趣通过这篇关于R的可折叠树的文章

http://bl.ocks.org/mbostock/4339083

我正在尝试使用这样的玩具数据集再现相同的例子

ID      Car Bus Train   Feedback_Car    Feedback_Bus    Feedback_Train
23433   Yes Yes Yes     Toyota          GreyHound       Amtrak

哪个可以表示为可折叠树,如下所示

我想知道如果有人可以帮助我重现这个概念(可折叠的树),使用上面的玩具数据集,这个例子将给我一个想法如何不同的组件的工作,例如格式化的JSON数据在R等等,并作为一个初始点.提前致谢.

解决方法

您可以使用data.tree包将您的数据转换为JSON,也可以使用networkD3包:
dat <- read.table(text="ID      Car Bus Train   Feedback_Car    Feedback_Bus    Feedback_Train
23433   Yes Yes Yes     Toyota          GreyHound       Amtrak",header=TRUE)

## Make an edgelist from your data
edges <- rbind(cbind(dat$ID,names(dat)[2:4]),cbind(names(dat)[2:4],as.vector(t(dat[5:7]))))

library(data.tree)
tree <- FromDataFrameNetwork(as.data.frame(edges))

tree

那将打印如下:

levelName
1 23433            
2  ¦--Car          
3  ¦   °--Toyota   
4  ¦--Bus          
5  ¦   °--GreyHound
6  °--Train        
7      °--Amtrak

现在,使用树结构来绘制networkD3:

lol <- ToListExplicit(tree,unname = TRUE)

library(networkD3)

diagonalNetwork(lol)

不幸的是,这并不支持可折叠的树木.但here是一个例子,如何获得你想要的闪光.为了将您的数据转换为正确的JSON格式,只需执行以下操作:

library(jsonlite)
json <- toJSON(lol)
原文链接:https://www.f2er.com/js/152502.html

猜你在找的JavaScript相关文章