1

我正在寻找一种方法来基于至少一个顶点的顶点属性得分来子图边缘,该顶点是在该边缘上发生的。

有没有简单的方法可以做到这一点?

有什么建议么?

4

1 回答 1

10

这个问题缺少可重复的示例或任何类型的示例数据。我将冒险并根据我能猜到的答案回答被问到。首先,我将创建一个示例图并将任意“prop”值分配给每个顶点。假设我对它们感兴趣,我会给它们上色prop>=3并绘制它们。

library(igraph)

gg <- graph.atlas(711)
V(gg)$name <- 1:7
V(gg)$prop <- c(1,2,2,3,3,1,1)
V(gg)$color <- ifelse(V(gg)$prop>=3, "orange","yellow")
plot(gg)

全图

现在,我可以找到连接到顶点的所有prop>=3

E(gg)[inc(V(gg)[prop>=3])]
# Edge sequence:
#            
# [3]  4 -- 3
# [4]  5 -- 4
# [5]  6 -- 5
# [10] 5 -- 3

如果我喜欢,我可以将它们提取到子图中

g2 <- subgraph.edges(gg, E(gg)[inc(V(gg)[prop>=3])])
plot(g2)

子图

于 2014-08-20T21:03:21.397 回答