【发布时间】:2016-01-15 05:31:31
【问题描述】:
我有一个 JSON 对象。例如:
js = {'a':'b', 'c':[10, 20], 'd':{'f':'k', 'l':'m'}}
现在,我想使用networkx 库来显示可视化此 JSON 的图形。更详细地说,对于给定的示例,我希望有一个“根”节点指向 a、c 和 d 节点。那么a节点应该指向b节点,c节点应该指向10和20,d节点应该指向f和l节点,最后是f和l 节点应该分别指向k 和m 节点。所以,我想执行以下操作:
G=nx.Graph()
G.dad_nodes_from(['a', 'c', 'd', 'b', 10, 20, 'f', 'l', 'k', 'm'])
G.add_edge('a','b')
G.add_edge('c',10)
G.add_edge('c',20)
G.add_edge('d','f')
G.add_edge('d','l')
G.add_edge('f','k')
G.add_edge('l','m')
我可以手动完成,但如何自动完成?
添加:部分问题来自d 可能引用不同的对象这一事实。所以,d 作为一个字典中的键与另一个字典中的d 不是同一个节点。
【问题讨论】:
标签: python json recursion networkx