Python 为什么我画图会遇到被零除的错误?
我有一些数据,如:Python 为什么我画图会遇到被零除的错误?,python,networkx,Python,Networkx,我有一些数据,如: 4556 5092 0.7000 4556 4785 0.7500 4556 5397 0.7000 4556 5139 0.7500 4556 5937 0.8333 4556 6220 0.7000 4556 5139 0.7500 4556 6220 0.7063 4559 4563 0.7500 4559 4770 0.7500
4556 5092 0.7000
4556 4785 0.7500
4556 5397 0.7000
4556 5139 0.7500
4556 5937 0.8333
4556 6220 0.7000
4556 5139 0.7500
4556 6220 0.7063
4559 4563 0.7500
4559 4770 0.7500
4559 4837 0.7500
4559 5640 0.7500
4559 4563 0.7500
4559 4770 0.7500
4559 4837 0.7500
4559 5640 0.7500
4561 4607 1.0000
4561 4600 0.7500
4561 4562 0.7500
4561 5090 0.7500
4561 5197 1.0000
4561 5182 0.7500
4561 5937 0.7500
4561 6143 0.7500
4561 5632 1.0000
4561 5870 1.0000
4561 6220 0.6756
4561 6143 0.7500
4561 6220 0.6750
4562 4607 0.7500
4562 5197 0.7500
4562 5632 0.7500
4562 5870 0.7500
4562 6220 0.6656
4564 4837 0.7500
4564 4837 0.7500
4566 5805 0.8750
4566 5981 0.6729
4571 4919 0.7000
4571 6004 0.7500
4571 6089 0.7000
4571 6044 0.7500
4571 6041 0.7000
4571 5863 0.7500
4571 6089 0.6398
前两列是节点,第三列是边的长度
我的代码是:
import matplotlib.pyplot as plt
import networkx as nx
G=nx.Graph()
filedata = file("1.txt")
for line in filedata:
datas = line.split()
G.add_edge(datas[0],datas[1],length=datas[2])
#nx.draw(G,with_lables=False,node_size=100)
nx.draw(G,with_lables=False,node_size=100)
plt.savefig("data.png")
#plt.show()
但我遇到:
/usr/local/lib/python2.7/dist-packages/networkx-1.7-py2.7.egg/networkx/drawing/layout.py:514: RuntimeWarning: divide by zero encountered in int_scalars
pos[:,i]*=scale/lim
networkx怎么了?我的系统没有出现任何错误。但是我们经常遇到这个问题。出现此警告后,networkx在绘图中心绘制一条粗黑线并保存。我升级到Networkx 1.8,到目前为止还没有遇到此错误 我的系统没有出现任何错误。但是我们经常遇到这个问题。出现此警告后,networkx在绘图中心绘制一条粗黑线并保存。我升级到Networkx 1.8,到目前为止还没有遇到此错误 我没有使用过您正在使用的任何LIB,但我能想到的第一件事是,数据[2]可能会被转换为int,这将使其为0。尝试将其显式转换为浮点。是否确定数据[0]、数据[1]和数据[2]确实包含浮点?而不是弦?这是因为networkxI认为这是networkx中的一个bug造成的。尝试更新networkx。我没有使用过您正在使用的任何LIB,但我能想到的第一件事是,数据[2]可能会被强制转换为int,这将使其为0。尝试将其显式转换为浮点。是否确定数据[0]、数据[1]和数据[2]确实包含浮点?而不是弦?这是因为networkxI认为这是networkx中的一个bug造成的。尝试更新networkx。