我需要在一个文本文件中编写一个图表,其中文件的每一行都由一个节点和其所有邻居组成。它基本上是邻接列表,以及函数write_adjlist
应该做什么。不幸的是,事实并非如此,因为边缘没有被复制。在维基百科的例子中,邻接列表是:
a 与 b、c 相邻
b 与 a, c 相邻
c 与 a, b 相邻
我们可以看到所有边缘都出现了两次(第(a,b)
1 行和第 2 行中的边缘(b,c)
,第 2 和第 3 行中的边缘......)。
但是现在如果我使用下面的代码来生成一个小世界网络:
import networkx as nx
N=5 #Number of nodes
v=2 #Number of neighbours
p=.1 #rewiring proba
G = nx.connected_watts_strogatz_graph(N,v,p)
nx.write_adjlist(G.to_undirected(),"test.txt")
它给了我:
#adj.py
# GMT Thu Jan 21 06:57:29 2016
# watts_strogatz_graph(5,2,0.1)
0 1 4
1 2
2 3
3 4
4
我想在哪里
0 1 4
1 2 0
2 3 1
3 2 4
4 0 3
你知道我该怎么做才能得到我想要的输出吗?