ノードとエッジの両方に関連付けられたデータ属性を持つ Python の networkx パッケージを使用して作成されたグラフがあります。これらの属性は、ネストされた辞書を持つ辞書 (またはリスト) そのものです。データ型が原因で、このグラフを .gexf 形式 (または .graphml など) に書き込む方法がわかりません。
これらのデータ型を XML に解析するために write_gexf を取得する方法はありますか? または他の回避策がありますか?
次に例を示します。
1 import networkx as nx
2
3 G = nx.graph()
4 G.add_node(0, attr1 = { 'name1' : 'Alice', 'name2' : 'Bob' }, attr2 = 5)
5 G.add_node(0, attr1 = { 'name1' : 'Calvin', 'name2' : 'Hobbes' }, attr2 = 6)
6 G.add_edge(0,1, likes = ['milk', 'oj'])
7
8 nx.write_gefx(G,"test.gefx")
エラーが発生します:
Traceback (most recent call last):
File "so_write_gefx.py", line 8, in <module>
nx.write_gexf(G,"test.gexf")
...
line 378, in add_attributes
for val,start,end in v:
ValueError: too many values to unpack