networkx画图报错 ValueError: max() arg is an empty sequence

错误描述

用python的networkx包画图:

import networkx as nx
import matplotlib.pyplot as plt
g=nx.Graph()
g.add_nodes_from([1,2,3,4,5])
g.add_edges_from([(1,2),(2,3),(3,4),(4,5),(5,1)])
nx.draw(g, with_labels=False)
plt.show()

控制台显示 ValueError: max() arg is an empty sequence

并提示 UserWarning: This figure includes Axes that are not compatible with tight_layout, so its results might be incorrect.  warnings.warn("This figure includes Axes that are not "

解决办法

这是由于不兼容导致的。可以创建子图,在nx.draw()之前加上plt.subplot(111):

import networkx as nx
import matplotlib.pyplot as plt
g=nx.Graph()
g.add_nodes_from([1,2,3,4,5])
g.add_edges_from([(1,2),(2,3),(3,4),(4,5),(5,1)])
plt.subplot(111)#创建子图
nx.draw(g, with_labels=False)
plt.show()

成功解决:

networkx画图报错 ValueError: max() arg is an empty sequence_第1张图片

你可能感兴趣的:(python,疑难杂症)