Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中绘制有序树?_Python_Graph_Tree - Fatal编程技术网

如何在python中绘制有序树?

如何在python中绘制有序树?,python,graph,tree,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, no

我有一个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中绘制有序树,谢谢,

不要调用变量
map
,有一个内置名为
map

您可以使用来保持项目的有序:

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

如果您的Python版本比2.7/3.2旧,您也可以使用它。

谢谢,我真的不应该为变量映射命名。但我还是不知道怎么画这棵有序的树。draw_networkx没有给我正确的树你必须给我更多的“不是正确的树”。试着做一棵小得多的树,它有着相同的基本结构,然后试着这样做,这样你就能找出问题所在。