【发布时间】:2018-08-29 18:38:22
【问题描述】:
我正在尝试从嵌套字典在 python 的 NetworkX 中创建一个简单的有向图,但看起来内置初始化并没有构建最终叶节点。
玩具示例:
class_hierarchy= {-1: ["A", "B"],
"A":{"A1":[1], "A2":[3,4]},
"B": {"B1":[5,6], "B2": [7,8]}}
建筑图:
G = DiGraph(class_hierarchy)
现在让我们看看里面有什么:
G.nodes
Out[86]: NodeView((-1, 'A', 'B', 'A1', 'A2', 'B1', 'B2'))
好像没有添加最终节点
检查:
list(G.successors('A'))
Out[88]: ['A1', 'A2']
看起来很合理
但是:
list(G.successors('A1'))
Out[89]: []
我不知道为什么会这样? NetworkX 的Documentation 指定:
incoming_graph_data (input graph (optional, default: None)) – 初始化图的数据。如果 None (默认)创建一个空图。数据可以是 to_networkx_graph() 函数支持的任何格式,目前包括边列表、dict of dicts、dict of lists等……
知道我做错了什么吗?
【问题讨论】:
标签: python graph networkx digraphs