最初,我在数据帧中存储了一个标签co occ网络,如下所示:
0 ['#A', '#B', '#C', '#D]
1 ['#A', '#E']
2 ['#b', '#c', '#D']
3 ['#C', '#D']
然后我把它转换成如下的邻接矩阵:
,#A,#B,#C,#D,#E,#F,#G,#H,#I,#J,#K
#A,0,1,1,0,1,1,1,1,0,1,0
#B,1,0,0,0,1,1,1,1,0,1,0
#C,1,0,0,0,1,1,1,1,0,1,0
...
我想将网络加载到networkx中,以便进行数学运算并绘制图形。因此,我使用np.genfromtext
方法将数据加载到Ndarary中。我已成功加载数据,但不知道如何标记它们
mydata = genfromtxt(src5+fname[0], delimiter=',',encoding='utf-8',comments='**')
adjacency = mydata[1:,1:]
print(adjacency)
[[0. 0. 0. ... 0. 0. 0.]
[0. 0. 0. ... 0. 0. 0.]
[0. 0. 0. ... 0. 0. 0.]
...
[0. 0. 0. ... 0. 0. 0.]
[0. 0. 0. ... 0. 0. 0.]
[0. 0. 0. ... 0. 0. 0.]]
顺便问一下,我可以从原始数据帧输入数据而不是使用邻接矩阵吗
您可以同时显示边和节点标签。
假设您有邻接矩阵和标签列表:
以下是一些可视化示例:
您可以在NetworkX documentation
上找到有关创建邻接矩阵图的更多信息
更新:
请参阅set_node_attributes函数向网络节点添加属性
使用
write_gexf
将图形保存到文件后,您将拥有一个具有适合Gephi的属性的文件相关问题 更多 >
编程相关推荐