我试图在一系列角色之间建立一个加权的社交网络。我手动创建了一个带有加权值的邻接矩阵:
。这已链接到一个单独的文件,其中存储了字符的属性,以便稍后着色。
我的目标是在TKplot
中创建一个图,其中顶点大小是度中心度,边宽度是它们的权重的函数。
然而,当使用igraph包来生成一个更简单的grapher时,只是为了测试代码,我注意到我正在生成额外的顶点,这些顶点似乎是顶点的副本(例如,请参见图像右侧标记为“Rusty”的清晰和彩色正方形:
。
以下是我到目前为止写的代码:
network_data<-read.csv('bbnmatrix2.csv',header=T, row.names=1, as.is=T)
bbnnames<-read.csv("bbnnames.csv", header=T, as.is=T)
net2 <- graph_from_incidence_matrix(network_data, directed = FALSE,
mode = c("total"),
multiple = FALSE,
weighted = T,
add.names = T)
plot(net2, vertex.label.color="black", vertex.label=bbnnames$name,
vertex.label.cex=0.5, edge.color="black",
vertex.color=clan, edge.width=E(net2)$weight,
vertex.shapes=bbnnames$status).
我期待一个67个顶点的图,但却生成了一个134个顶点的图。
1条答案
按热度按时间wz3gfoph1#
你想做一个双向网络吗?
graph_from_incidence_matrix()
将输入矩阵视为定义二分网络。我想你想要的是graph_from_adjacency_matrix()
。