NetworkX раскрашивает узел во время выполнения

#python #graph #networkx

#python #График #networkx

Вопрос:

У меня есть назначение для реализации обхода графов bfs и dfs с визуализацией. Для этого я использую NetworkX в Python. Что я хочу знать, так это как раскрасить узел во время выполнения? Например, когда я нахожусь на определенном узле в bfs / dfs, чтобы установить его цвет на красный или что-то в этом роде. Я знаю, как раскрашивать разные узлы графика, но не во время выполнения. Я подумал, что есть возможность рисовать график снова и снова, но я уверен, что это отнимает много времени. Какие-либо предложения?

Заранее спасибо!

Ответ №1:

NetworkX рисует статические графики, но вы можете пометить посещенные и не посещенные ребра разным цветом и толщиной, чтобы увидеть процесс обхода.

 edgeSeq = [list of visited nodes]
nx.draw(G, pos, edge_color='gray',width=.2)
nx.draw(G, pos, edgelist = edgeSeq, edge_color='blue', width=2)
  

Вы можете попробовать пробную версию Cambridge Intelligence для работы с функциями временной шкалы.