【问题标题】:How can I plot igraph community with defined colors?如何绘制具有定义颜色的 igraph 社区?
【发布时间】:2016-09-19 08:26:58
【问题描述】:

我可以使用下面的代码来生成和绘制社区:

 wc <- walktrap.community(subgraph)
 modularity(wc)
 membership(wc)

 layout <-layout.fruchterman.reingold(subgraph)

 plot(wc, subgraph,  layout=layout, vertex.label=NA, vertex.size=5, edge.arrow.size=.2)

但是,社区的颜色是自动的,我有两个问题:

  1. 我可以自定义社区颜色吗?
  2. 我可以在社区区域添加一些文字吗?

【问题讨论】:

    标签: r igraph


    【解决方案1】:

    是的,你可以做这两件事。使用plot.igraph 中的参数可以直接根据节点所在的模块更改节点的颜色(以及更改模块周围多边形的颜色)。向模块添加文本并不是那么简单,据我所知,最简单的解决方案是手动将文本添加到绘图中。

    library(igraph)
    
    # Generate random graph and community structure
    set.seed(23)
    g <- sample_gnm(15, 45)
    wc <- walktrap.community(g)
    
    # Plot
    par(mfrow=c(1,2), mar=rep(1,4))
    layout <-layout.fruchterman.reingold(g)
    plot(wc, g, layout=layout, vertex.label=NA, vertex.size=5,  edge.arrow.size=.2)
    
    # Change colors of nodes, polygons, and polygon borders
    new_cols <- c("white", "red", "black")[membership(wc)]
    plot(wc, g, col=new_cols, mark.border="black", mark.col=c("tan", "pink", "lightgray"), 
        layout=layout, vertex.label=NA, vertex.size=5, edge.arrow.size=.2)
    
    # Add labels
    text(c(-1.15, 0.8, 0.9), c(0.35, -0.7, 0.8), c("A", "B", "C"))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-10
      • 1970-01-01
      • 2020-01-27
      • 2014-03-25
      • 2021-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多