[英]d3Network: How can I relate nodes to links?
我在玩d3Network软件包。 我从帮助文件中运行了以下示例。 我敢肯定这很简单,但是我无法弄清楚它如何标识将哪个节点分配给哪个链接。
devtools::install_github("d3Network", "christophergandrud")
library(d3Network)
library(rjson)
json_file <- "https://raw.github.com/christophergandrud/d3Network/master/JSONdata/miserables.json"
json_text <- paste(readLines(json_file), collapse = '')
MisLinks <- JSONtoDF(json_text, array = "links")
MisNodes <- JSONtoDF(json_text, array = "nodes")
d3ForceNetwork(Links = MisLinks,
Nodes = MisNodes,
Source = "source",
Target = "target",
Value = "value",
NodeID = "name",
Group = "group",
opacity = 1,
file = "example_graph_force_directed.html")
看两个数据帧。 该文档说,Links数据框必须按源排序,并且节点名称按相同顺序排序。
这是否意味着“节点1”是“ Myriel”而“节点2”是“拿破仑”? 如果是这样,那么节点0在何处命名?
> head(MisLinks)
source target value
1 1 0 1
2 2 0 8
3 3 0 10
4 3 2 6
5 4 0 1
6 5 0 1
> head(MisNodes)
name group
1 Myriel 1
2 Napoleon 1
3 Mlle.Baptistine 1
4 Mme.Magloire 1
5 CountessdeLo 1
6 Geborand 1
谁能解释,或给我看一个更小的例子来解释问题?
谢谢
这是一个简单的示例,仅在R中创建:
jjnames<-c("A","B","C","D","E","F","G","H")
mygroup<-c(1,1,1,2,2,2,2,2)
JJNodes<-data.frame( name=jjnames, group=mygroup )
jjsources<-c( 0 , 4 )
jjtargets<-c( 1, 5 )
jjvalues<-rep( c(1,2) , length(jjtargets) ) ; jjvalues<-jjvalues[1:length(jjtargets)]
JJLinks<-data.frame(source=jjsources,target=jjtargets,value=jjvalues)
d3ForceNetwork(Links = JJLinks, Nodes = JJNodes,
Source = "source", Target = "target",
Value = "value", NodeID = "name",
Group = "group", width = 550, height = 400, zoom=TRUE,
opacity = 0.9)`
链接由成对的节点索引定义。 0 => 1将第一个节点链接到第二个节点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.