Python 如何仅显示重要节点';networkx图形上的名称?

Python 如何仅显示重要节点';networkx图形上的名称?,python,label,networkx,Python,Label,Networkx,这张图表看起来很凌乱,几乎认不出任何东西。 我只希望它显示具有高中心性的节点的名称, 但我不知道怎么做。我现在只能显示所有的名字 G_D=nx.Graph()G_D.从(G5.edges(data=True))添加边 nx.draw(G_D,nx.spring_布局(G_D),节点大小=[v*10表示v英寸 df.iloc[:,0]],带_labels=True) nx.draw有一个参数,它与with_labels=True结合使用,可以只绘制您想要的标签,只绘制您想要的方式 标签(字典,可

这张图表看起来很凌乱,几乎认不出任何东西。 我只希望它显示具有高中心性的节点的名称, 但我不知道怎么做。我现在只能显示所有的名字

G_D=nx.Graph()G_D.从(G5.edges(data=True))添加边

nx.draw(G_D,nx.spring_布局(G_D),节点大小=[v*10表示v英寸 df.iloc[:,0]],带_labels=True)


nx.draw
有一个参数,它与
with_labels=True
结合使用,可以只绘制您想要的标签,只绘制您想要的方式

标签(字典,可选(默认值=无))–节点中的节点标签 由文本标签节点键入的字典

例如,可以拾取节点
“标签”
参数,并为具有3个或更多邻居的节点绘制标签:

labels = {
    n: (G.nodes[n]['label']
        if len(list(nx.all_neighbors(G, n))) > 2
        else '')
    for n in G.nodes
}
nx.draw(G, with_labels=True, labels=labels)


另外,我不建议使用基本的networkx绘图功能。有许多功能强大的可视化库优于networkx。甚至你也能找到同样的观点。可以使用(与各种库一起)或用于真正巨大的图形。

nx.draw
有一个参数,它与
with_labels=True
结合使用,可以只绘制您想要的标签,只绘制您想要的方式

标签(字典,可选(默认值=无))–节点中的节点标签 由文本标签节点键入的字典

例如,可以拾取节点
“标签”
参数,并为具有3个或更多邻居的节点绘制标签:

labels = {
    n: (G.nodes[n]['label']
        if len(list(nx.all_neighbors(G, n))) > 2
        else '')
    for n in G.nodes
}
nx.draw(G, with_labels=True, labels=labels)

另外,我不建议使用基本的networkx绘图功能。有许多功能强大的可视化库优于networkx。甚至你也能找到同样的观点。您可以使用(与各种库一起)或用于真正巨大的图形