使用NetworkX导出图的布局位置
在NetworkX中生成了图的x/y布局坐标后,怎么把这个图和节点的位置一起导出,像用GraphML这样的格式呢?
这些布局算法好像并没有直接在图上标注节点的位置?还是说其实有呢?
1 个回答
11
布局算法并不会设置节点的属性(但其实应该设置的)。下面是如何设置这些属性的方法:
In [1]: import networkx as nx
In [2]: G=nx.path_graph(4)
In [3]: pos=nx.spring_layout(G)
In [4]: nx.set_node_attributes(G,'pos',pos)
In [5]: G.node
Out[5]:
{0: {'pos': array([ 0., 0.])},
1: {'pos': array([ 0.32267963, 0.03340727])},
2: {'pos': array([ 0.67729057, 0.07011044])},
3: {'pos': array([ 1. , 0.10350174])}}