使用带有python networkx的邻接表创建网络

时间:2020-09-08 23:10:02

标签: python networkx

我正在尝试使用networkx创建图,但是由于某种原因,我没有得到它。

“ graph” json文件如下所示:

graph = {'A': ['B', 'C', 'E'],
         'B': ['A','D', 'E'],
         'C': ['A', 'F', 'G'],
         'D': ['B'],
         'E': ['A', 'B','D'],
         'F': ['C'],
         'G': []}

我正在使用此代码

G = nx.read_adjlist("graph.json", create_using=nx.DiGraph())
nx.draw_networkx(G)

输出:

enter image description here

根据邻接表'graph',哪个不正确。

干杯!

1 个答案:

答案 0 :(得分:2)

使用read_adjlist命令时,它需要输入文本文件。

我想,如果您以原始文本查看文件,则它看起来像:

“ A”,[“ B”,“ C”,“ E”],“ B”:[“ A”,“ D”,“ E”],“ C”:[“ A”,“ F “,” G“],” D“:[” B“],” E“:[” A“,” B“,” D“],” F“:[” C“],” G“

它将其解释为一串用逗号分隔的变量。因此,第一件事是字符串"A"(字符串中包含双引号)。

这是您的第一个节点。之后的每个字符串都将成为此第一个节点的邻居。前四个是["B""C""E"]"B"


那么您需要做什么?查看networkx commands for json format并找到适合您的网络存储方式的版本(或修改网络存储以具有以下格式之一)。