gpt4 book ai didi

python - 如何在networkx图上只显示重要节点的名称?

转载 作者:太空宇宙 更新时间:2023-11-03 21:07:16 25 4
gpt4 key购买 nike

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

Graph:the result of the following codes

G_D=nx.Graph() G_D.add_edges_from(G5.edges(data=True))

nx.draw(G_D,nx.spring_layout(G_D),node_size=[v * 10 for v in df.iloc[:,0]],with_labels= True)

最佳答案

nx.draw 有一个参数 labels ,与 with_labels=True 结合使用可以仅绘制您想要的标签,并且仅按照您想要的方式绘制。

labels (dictionary, optional (default=None)) – Node labels in a dictionary keyed by node of text labels

例如,您可以选择节点 'label' 参数并为具有 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更好的强大可视化库。偶in networkx docs你可以找到相同的意见。可以使用Gephi , Graphviz (与各种库)或 Cytoscape对于非常巨大的图表。

关于python - 如何在networkx图上只显示重要节点的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55320418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com