igraph到tidygraph子集的子组件?

时间:2018-07-11 14:54:16

标签: igraph tidygraph

过去几个月来我一直在研究igraph,很高兴找到Thomas Lin Pedersen @ thomasp85开发的可将igraph与tidyverse方法相协调的tidygraph程序包。

我目前正在将我的igraph代码转换为Tidygraph,并且陷入了一些我认为应该相对简单的事情。

在igraph中,我将使用subcomponent和归纳的subgraph来对图进行子集化

在Tidygraph中,我了解到我应该改用morph或convert,并且该子组件实际上是BFS,但被代码所困扰。任何帮助将非常感激。

library(tidygraph)
library(visNetwork)

# sample graph
g <- tidygraph::create_tree(8,2) %>% 
  activate(nodes) %>% 
  mutate(label = LETTERS[1:8])

visIgraph(g,layout="layout_as_tree", flip.y=F,idToLabel = F)

#Using igraph returns nodes B, D, E, H
SubTree = igraph::subcomponent(g, which(igraph::V(g)$label == "B") , mode = "out")
igraph::induced_subgraph(g,SubTree) %>% as_tbl_graph()

#How to do the same in tidygraph?
g %>% convert(to_bfs_tree,root=igraph::V(g)$label == "B",mode="out")

0 个答案:

没有答案