使用igraph

时间:2017-05-19 19:09:08

标签: r network-programming igraph sna

我在R中使用igraph进行网络分析。我想在图中的每一行显示一个edge属性。一个例子如下

df <- data.frame(a = c(0,1,2,3,4),b = c(3,4,5,6,7))
nod <- data.frame(node = c(0:7),wt = c(1:8))
pg <- graph_from_data_frame(d = df, vertices = nod,directed = F)
plot(pg)

我希望“wt”特征的值显示在线上的每个节点之间,或者最好是在线条断开的小间隙中显示。

是否有可能实现这一目标?

1 个答案:

答案 0 :(得分:5)

使用参数edge.label指定边缘的标签,我使用过 - 可能是错误的 - 点头$ wt。当然,您可以指定其他标签。

您可以使用以下代码:

# load the package
library(igraph)

# your code
df <- data.frame(a = c(0,1,2,3,4),b = c(3,4,5,6,7))
nod <- data.frame(node = c(0:7),wt = c(1:8))
pg <- graph_from_data_frame(d = df, vertices = nod,directed = F)

# plot function with edge.label added
plot(pg, edge.label = nod$wt)

请让我知道这是否是你想要的。