学习NetworkX时,查看结点属性时遇到了报错:
AttributeError: ‘Graph’ object has no attribute ‘node’
G= nx.Graph(name='无向图',data=2022) # 创建无向图
G.add_nodes_from([1,2,3,4,5])#利用列表,往图中添加结点
G.add_node(6,name='F',weight=12)
print(G.node[6]['name']) #根据结点ID,查看结点其他属性
上网查了一下,原因是NetworkX低版本是有node属性,而高版本没用node属性。
改正方法1:只要将node属性改成nodes即可。
正确代码如下:
G= nx.Graph(name='无向图',data=2022) # 创建无向图
G.add_nodes_from([1,2,3,4,5])#利用列表,往图中添加结点
G.add_node(6,name='F',weight=12)
print(G.nodes[6]['name']) #根据结点ID,查看结点其他属性
改正方法2:重新安装低版本的NetworkX
pip安装:pip install networkx==2.3