2017-05-19 57 views
2

我在R中使用igraph进行网络分析。我想在图的每一行显示边缘属性。下面是一个例子用igraph显示边缘属性作为标签

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) 

我想要的“重量”特征的值就行各节点之间显示出来,或优选地,在一个小间隙,其中换行符。

是否可以做到这一点?

+0

有五条边,但有八个属性;他们应该如何安排 – user2957945

+0

好点!假设它是每个节点wt变量的总和。 – user2997345

回答

1

使用参数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) 

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

+0

太棒了!我没有意识到这很容易 – user2997345

+0

很高兴我可以帮助(我也必须查看它;-)。如果您觉得这是有帮助的,请随时将答案标记为有用。 – KoenV