Py学习  »  Python

如何使用包含节点和边的python dict构建g networkx?

Ramiro Tormenta • 4 年前 • 648 次点击  

考虑一个元组列表。此列表将转换为字典,其中主关键字是节点和边。

例子:

ls = [('a', 1), ('b', 2), ('c', 3), ('a', 2), ('b', 3)]

为了达到这个结果,我导入了 networkx 图书馆。

import networkx as nx
G = nx.Graph()
G.add_edges_from(ls)

但是,当我转换的时候 G图 node_link_data : nx.readwrite.json_graph.node_link_data(G) 我发现有些项(源和目标)是颠倒的,例如,元组列表中的第二个项被分类为 来源 相反 目标

# original tuple
('b', 2)

# node_link_data
links: [
  {'source': 2, 'target': 'b'}
  ...
]

所以,我创造了我自己的口述 {'nodes': [], 'links': []} .

我想用这个dict创建networkx图。我对使用这个库的算法来测量节点感兴趣。

我尝试使用:

G = nx.Graph(myDict)

这将返回一个错误: TypeError: Input is not known type

如何使用已经包含节点和边的dict构建此图?或者,我可以使用其他库来度量度、集群等。而是使用其他库。提前谢谢

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38170
 
648 次点击  
文章 [ 1 ]  |  最新文章 4 年前