【问题标题】:How to show node name in graphs using networkx? [duplicate]如何使用networkx在图中显示节点名称? [复制]
【发布时间】:2015-12-29 21:35:45
【问题描述】:

我有密码

import networkx as nx
import matplotlib.pyplot as plt

G = nx.DiGraph()

G.add_nodes_from([1, 2, 3, 4])
G.add_edges_from([(1, 2), (2, 1), (2, 3)])

nx.draw(G)
plt.savefig("graph.png")
plt.show()

它绘制了以下图表:

但是,我需要显示标签。 如何在图形的节点内显示数值和单词(一、二、三和四)?

【问题讨论】:

    标签: python matplotlib graph networkx


    【解决方案1】:

    你只需要用nx.Draw()调用with_labels=True参数:

    import networkx as nx
    import matplotlib.pyplot as plt
    
    G = nx.DiGraph()
    
    G.add_nodes_from([1, 2, 3, 4])
    G.add_edges_from([(1, 2), (2, 1), (2, 3)])
    
    nx.draw(G,with_labels=True)
    plt.savefig("graph.png")
    plt.show()
    

    您也可以致电font_sizefont_color

    请参阅此处的文档: https://networkx.github.io/documentation/latest/reference/drawing.html

    【讨论】:

    • 谢谢!我很困惑,因为我关注了一些old manuals,这个参数没有出现。为了在 word 中显示数字,我使用了 H = nx.relabel_nodes(G, {1: 'one', 2: 'two', 3: 'three', 4: 'four'})nx.draw(H, with_labels=True)
    • 抱歉,我完全错过了关于重新标记的最后一部分
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-16
    • 2013-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-15
    相关资源
    最近更新 更多