我有两个列表。其中一个有这样的数据结构:在每一行中,第一个元素是ID,第二个是电子邮件地址。为什么我的networkx图形在节点之间不显示边界?
['0', '[email protected]']
['1','[email protected]']
第二列表是“谁写谁”列表中,每一行与第一ID-号码作为发件人,第二个是收件人
['0', '4']
['0', '6']
['1', '4']
顺便说一句,括号内是实际上不是列表的一部分。这是我的jupyter笔记本输出。第一个列表大约在2000年,第二个列表有40000行。在下面的代码中,我从第一个列表中添加节点 - 在这种情况下是电子邮件地址。然后我遍历第二个列表并使用给定的ID在节点之间创建边。
first =-1
second =-1
for row in idsList:
g.add_nodes_from(row[1])
for row in dncList:
for i in range (len(idsList)):
if (row[0]==idsList[i][0]):
first=i;
elif(row[1]==idsList[i][0]):
second=i
g.add_edge(idsList[first][1],idsList[second][1])
nx.draw_networkx(g,with_labels = False, node_size = 30)
plt.show()
但是,我看不到节点之间的边缘。上面的代码产生下面的图。用edges()
打印给我所有的边缘列表,所以没有问题。我在这里错过了什么?
只是一个评论。由于所有的索引,这个for循环很难阅读。 '对于我在范围内(len(idslist))...'如何做 '为索引,身份证在枚举(idsList): 如果id [0] ==行[0]: 第一=索引 ELIF ID [0] = row [0]: second = index' – Joel