在树形图中获取节点后代

时间:2015-01-15 16:51:47

标签: r graph igraph counting

我有一个有向图(grafopri1fase1)图表没有循环,它有一个树结构(不是二叉树)。 我有一个节点数组(meterdiretti),我从图形(grafopri1fase1)中提取了一个条件。

我想知道从Meterdiretti的每个节点开始,Meterdiretti的每个节点下有多少个节点。

我想要的结果是具有以下格式的矩阵

first column------------     second column       
meterdiretti[1] -------- total amount of nodes reachable starting from meterdiretti[1] 

meterdiretti[2] -------- total amount of nodes reachable starting from meterdiretti[2] 

.... 

meterdiretti[n]  ----------total amount of nodes reachable starting from meterdiretti[n]

1 个答案:

答案 0 :(得分:1)

对你想要的东西进行试探 - 如果你能在你的问题中添加一个可重复的例子,这将是一件好事。

我认为你想要的是计算一个节点的后代。您可以使用neighborhood.sizemode="out"参数执行此操作。

library(igraph)

# create a random graph
g <- graph.tree(17, children = 2)
plot(g, layout=layout.reingold.tilford)

# test on a single node    
neighborhood.size( g, vcount(g),  "1", "out") - 1
# [1] 16

# apply over a few nodes
neighborhood.size( g, vcount(g),  c(1,4,7), "out") - 1
[1] 16  4  2

enter image description here