Я пытаюсь установить цвет узла сети на основе некоторых числовых значений.Однако я заметил, что в векторе, определяющем node_color, только относительные значения имеют значение, если я использую цветовую карту matplotlib.Я хочу, чтобы цвет мог отражать абсолютные значения.
Например, следующий код генерирует сеть, узлы которой имеют разные цвета:
G = nx.cycle_graph(6)
edges = np.array(G.edges)
pos = nx.spring_layout(G, iterations=200)
values = np.array([0.1,0.2,0.45,0.25,0.35,0.15])
nx.draw(G, pos, node_color=values,cmap=plt.cm.Reds)
Если мы добавим константу к вектору node_color, как показано ниже:
values = np.array([0.1,0.2,0.45,0.25,0.35,0.15])+1
nx.draw(G, pos, node_color=values,cmap=plt.cm.Reds)
Я ожидаю, что цвета всех узлов станут темнее, но код возвращает идентичную сеть.Есть ли способ изменить это?Я знаю, что в imshow мы можем использовать аргумент «норма», чтобы изменить его.Но есть ли простой способ сделать это для графа networkx?