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()

成功解決:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章