如何为 NetworkX 中的节点设置颜色?

新手上路,请多包涵

我创建了我的图表,到目前为止一切看起来都很棒,但我想在创建后更新我的节点的颜色。

我的目标是可视化 DFS,我将首先显示初始图形,然后随着 DFS 解决问题逐步对节点进行着色。

如果有人感兴趣,可以在 Github 上找到示例代码

原文由 Gokhan Arik 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.8k
2 个回答

您所需要的只是指定一个颜色映射,将颜色映射到每个节点并将其发送到 nx.draw 函数。澄清一下,对于 20 个节点,我想将前 10 个节点涂成蓝色,其余的涂成绿色。代码如下:

 G = nx.erdos_renyi_graph(20, 0.1)
color_map = []
for node in G:
    if node < 10:
        color_map.append('blue')
    else:
        color_map.append('green')
nx.draw(G, node_color=color_map, with_labels=True)
plt.show()

您将在附图中找到图表 在此处输入图像描述 .

原文由 Abdallah Sobehy 发布,翻译遵循 CC BY-SA 4.0 许可协议

参考 node_color 参数:

 nx.draw_networkx_nodes(G, pos, node_size=200, node_color='#00b4d9')

原文由 Montenegrodr 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题