R 中的 igraph - 查找所有可访问的顶点
igraph in R - find all accessible vertices
有没有办法在 R 中找到 igraph 的所有可访问顶点,就像 graph 包中的函数 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)
}
有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
有没有办法在 R 中找到 igraph 的所有可访问顶点,就像 graph 包中的函数 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)
}
有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