ipython - 网络X错误: Node 8 has no position

标签 ipython networkx

我刚刚开始编程,最近我正在使用 networkx 在 ipython 笔记本上工作。如果运行下面的代码,它可以完美运行,但如果取消注释 #G.add_edge(2, 8,egdes=6),则会出现错误 NetworkXError: Node 8 has noposition。为什么它只工作到第六个节点?

import networkx as nx 
import matplotlib.pyplot as plt
import pylab
%matplotlib inline

pos=nx.spring_layout(G)

G = nx.Graph()

G.add_edge(1, 2, egdes=1)
G.add_edge(1, 3, egdes=2)
G.add_edge(1, 4, egdes=3)
G.add_edge(1, 5, egdes=4)
G.add_edge(1, 6, egdes=5)
#G.add_edge(2, 8, egdes=6)

nx.draw(G,pos)
edge_labels=dict([((fe,se,),e['egdes'])
            for fe,se,e in G.edges(data=True)])

nx.draw_networkx_edge_labels(G,pos,edge_labels)

pylab.show()

希望你们能帮助我,先谢谢了!

最佳答案

您需要创建节点位置

pos=nx.spring_layout(G)

构建图表(添加所有边和节点)之后以及绘制图表之前

关于ipython - 网络X错误: Node 8 has no position,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26909672/

相关文章:

Python 在 matplotlib 中的两个列表之间创建字图以显示列表的共性

python - Networkx 统计推断

python - 绘制对数分级网络度分布

python - 更改 NetworkX 中的节点形状

python - 如何在创建 QApplication 后导入 QtWebEngineWidgets

python - Tab 补全在 IPython 0.12 中看不到我的模块

R – 没有魔法 [IP][y] : iPython -- Corrupt python kernel?

buffer - 如何增加 ipython qtconsole 回滚缓冲区限制

python - 在 Stata/python 中合并相似的行

python - IPython 显示不带引号的字符串