【问题标题】:Collapsing graph by clusters in igraph在 igraph 中按集群折叠图
【发布时间】:2016-05-02 05:33:53
【问题描述】:

我想将图表折叠到其各自的社区/集群中。让我用以下玩具示例来说明这一点:

set.seed(123)

#toy graph
g <- barabasi.game(10) %>%
  as.undirected()

#identify communities 
c_g <- fastgreedy.community(g) 

共有三个社区,如下图所示。

我想减少顶点的折叠,以便结果图中的顶点对应于先前顶点的成员资格。见图表。

我是 igraph 包的新手,我不熟悉处理 igraph 对象的最佳方式。

【问题讨论】:

    标签: r igraph


    【解决方案1】:

    你可以试试contract

    library(igraph)
    set.seed(123)
    g <- barabasi.game(10) %>% as.undirected()
    c_g <- fastgreedy.community(g) 
    V(g)$name <- letters[1:vcount(g)]
    
    g2 <- contract(g, membership(c_g), vertex.attr.comb=toString)
    
    par(mfrow=c(1,2))
    plot(g, vertex.color=membership(c_g))
    plot(simplify(g2), vertex.color=1:vcount(g2))
    

    【讨论】:

      猜你喜欢
      • 2016-01-28
      • 1970-01-01
      • 2013-03-29
      • 2016-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-13
      • 2018-12-24
      相关资源
      最近更新 更多