如何在python中绘制有序树?

时间:2011-08-09 20:33:49

标签: python graph tree

我有一个XML文件,其底层结构是有序树。我在表示这棵树的网络中使用有向图,然后我想绘制这棵树。假设有向图是G,那么我写下面的代码:

map = dict(zip(id,tag)) # map from id to label
pos = nx.pydot_layout(G,prog = 'dot')
labels = nx.draw_networkx_labels(G, pos, map) 
nx.draw_networkx(G, pos, False, node_size = 1000, node_color = color)
plt.show()

但我无法获得有序的树。 silbing节点的顺序不是原始顺序。

我想知道如何在python中绘制有序树,谢谢,

1 个答案:

答案 0 :(得分:1)

不要调用变量map,有一个名为map的内置函数。

您可以使用OrderedDict按顺序保存项目:

from collections import OrderedDict
from itertools import izip
themap = OrderedDict(izip(id,tag)) # map from id to label

如果你的Python旧版本不是2.7 / 3.2,你也可以get it from PyPI