首页 Python python – 网络特定节点标签

python – 网络特定节点标签

我想画一个网络,我想要它是没有标签的cretin节点的例外. 目前我所拥有的是这样的: nx.draw(G, pos=pos, node_color=b, node_size=8, with_labels=False)for hub in hubs: nx.draw_networkx_nodes(G, pos, nodelist=[hub[0]], node_color=r)

我想画一个网络,我想要它是没有标签的cretin节点的例外.

目前我所拥有的是这样的:

nx.draw(G,pos=pos,node_color='b',node_size=8,with_labels=False)

for hub in hubs:
     nx.draw_networkx_nodes(G,pos,nodelist=[hub[0]],node_color='r')

此时的代码会更改集线器列表中节点的大小和颜色.我也想标注他们.

我尝试添加标签参数并将其值设置为集线器名称.但它没有奏效.

谢谢

解决方法

从布拉的评论,解决方案很容易

诀窍是将标签设置在字典中,其中键是节点名称,值是您需要的标签.因此,为了仅标记集线器,代码将与此类似:

labels = {}    
for node in G.nodes():
    if node in hubs:
        #set the node name as the key and the label as its value 
        labels[node] = node
#set the argument 'with labels' to False so you have unlabeled graph
nx.draw(G,with_labels=False)
#Now only add labels to the nodes you require (the hubs in my case)
nx.draw_networkx_labels(G,labels,font_size=16,font_color='r')

我得到了我想要的是以下内容:

我希望这将有助于其他python / networkx新手像我自己:)

再次感谢布拉

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/kaifa/python/20200918/8556.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

返回顶部