【发布时间】:2015-01-17 18:37:00
【问题描述】:
我创建了图表,到目前为止一切都很好,但我想在创建后更新节点的颜色。
我的目标是可视化 DFS,我将首先显示初始图形,然后随着 DFS 解决问题逐步为节点着色。
如果有人感兴趣,可以在Github获取示例代码
【问题讨论】:
我创建了图表,到目前为止一切都很好,但我想在创建后更新节点的颜色。
我的目标是可视化 DFS,我将首先显示初始图形,然后随着 DFS 解决问题逐步为节点着色。
如果有人感兴趣,可以在Github获取示例代码
【问题讨论】:
您所需要的只是指定一个颜色映射,它将颜色映射到每个节点并将其发送到 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()
【讨论】:
参考node_color参数:
nx.draw_networkx_nodes(G, pos, node_size=200, node_color='#00b4d9')
【讨论】:
之前已经回答过,但你也可以这样做:
# define color map. user_node = red, book_nodes = green
color_map = ['red' if node == user_id else 'green' for node in G]
graph = nx.draw_networkx(G,pos, node_color=color_map) # node lables
【讨论】: