精神残废 2023-03-21 22:40 采纳率: 69.8%
浏览 81
已结题

networkx怎么给节点添加标签


import networkx as nx
import matplotlib.pyplot as plt


# 数据准备
G = nx.DiGraph(with_labels=True)  # 单边有向图

G.add_edges_from([(1,2), ('x','y')]) # 一次性添加多条边
nx.draw(G)        # 简单画一下


plt.axis("off")           # 去掉边框
plt.show()

img

  • 写回答

2条回答 默认 最新

  • 初见~ 2023-03-21 23:14
    关注

    可以通过 nx.set_node_attributes() 给节点添加标签,具体实现如下:

    import networkx as nx
    import matplotlib.pyplot as plt
     
    # 数据准备
    G = nx.DiGraph(with_labels=True)  # 单边有向图
    G.add_edges_from([(1,2), ('x','y')]) # 一次性添加多条边
     
    # 添加节点标签
    labels = {1: 'A', 2: 'B', 'x': 'C', 'y': 'D'}
    nx.set_node_attributes(G, labels, 'label')
     
    # 绘制图形
    pos = nx.spring_layout(G)
    nx.draw(G, pos)
    nx.draw_networkx_labels(G, pos, labels=nx.get_node_attributes(G, 'label'))
    plt.axis("off")
    plt.show()
    
    
    

    其中,nx.set_node_attributes() 的三个参数分别为图对象、标签字典和标签名称。在绘制图形时,使用 nx.draw_networkx_labels() 绘制节点标签。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月30日
  • 已采纳回答 3月22日
  • 修改了问题 3月21日
  • 创建了问题 3月21日

悬赏问题

  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装