You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用matplotlib与networkx绘图不显示无连接孤立节点如何解决

解决NetworkX绘制时孤立节点不显示的问题

问题原因

你只调用了G.add_edge(1,2)添加边,NetworkX在添加边时仅会自动将边关联的两个节点加入图实例,孤立节点3并未被添加到MultiGraph对象中,因此绘制时不会显示。

解决方法

在添加边之前,先把所有需要展示的节点加入到图实例中即可,修改后完整代码如下:

import networkx as nx
import matplotlib.pyplot as plt

nodes = {1: (1,0),
         2: (0,1),
         3: (0,0),}

G = nx.MultiGraph()
# 新增:将所有节点添加到图中
G.add_nodes_from(nodes.keys())
G.add_edge(1,2)
nx.draw_networkx(G, nodes)

plt.axis("off")
plt.show()

补充说明

如果需要给节点存储坐标属性,也可以用G.add_nodes_from(nodes.items())直接传入节点和对应的坐标元组,后续绘制时不需要重复传pos参数,直接调用nx.draw_networkx(G, pos=nx.get_node_attributes(G, 'pos'))也可以实现相同效果。

内容的提问来源于stack exchange,提问作者aloea

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 06:27:02