如果您从 R 中使用 igraph,请使用此选项
unfold_tree {igraph} | R 文档 |
在图上执行广度优先搜索,并通过复制多次找到的顶点将其转换为树或森林。
unfold_tree(graph, mode = c("all", "out", "in", "total"), roots)
图 |
输入图,可以是定向图或非定向图。 |
模式 |
字符串,定义用于广度优先搜索的路径类型。“out”跟随传出边,“in”跟随传入边,“all”和“total”都跟随。此参数对于非定向图将被忽略。 |
roots |
一个向量,给出执行广度优先搜索的顶点。通常它包含每个组件的一个顶点。 |
森林是一个图,其组成部分是树。
roots
向量可以通过简单地对图的所有组件进行拓扑排序来计算,请参见下面的示例。
包含两个组件的列表
tree |
结果,一个 |
vertex_index |
一个数字向量,它给出了从新图的顶点到旧图的顶点的映射。 |
Gabor Csardi csardi.gabor@gmail.com
g <- make_tree(10) %du% make_tree(10)
V(g)$id <- seq_len(vcount(g))-1
roots <- sapply(decompose(g), function(x) {
V(x)$id[ topo_sort(x)[1]+1 ] })
tree <- unfold_tree(g, roots=roots)