R中的igraph - 找到所有可访问的顶点

时间:2015-03-06 21:29:26

标签: r graph igraph

有没有办法在R中找到igraph的所有可访问顶点,就像图表包中的函数acc一样?我只能找到igraph中相邻顶点的函数但不能访问顶点。

为了给出一些上下文,我有一个分层图,我想找到下面的所有节点。我可以使用图形对象的acc函数来完成此操作。但是,acc不适用于igraph

nodesBelow <- function(graph, nodes) {
        sub <- character()
        for(node in nodes){
        sub <- c(sub, c(names(acc(graph, node)[[1]]),node))
    }
    sub <- unique(sub)
subGraph(sub, graph)
}

1 个答案:

答案 0 :(得分:4)

subcomponent - 示例:

g1 <- graph.tree(n = 8, children = 2, mode = "out" )
print.igraph(g1,full = TRUE)

# IGRAPH D--- 8 7 -- Tree
# + attr: name (g/c), children (g/n), mode (g/c)
# + edges:
#   [1] 1->2 1->3 2->4 2->5 3->6 3->7 4->8

subcomponent(g1, 2, mode = "out")
#[1] 2 4 5 8