Как нарисовать одинаковые узлы с разными цветами ребер, соответствующие двум разным графам?

#python #networkx

#python #networkx

Вопрос:

Надеюсь, мой вопрос раньше не задавался. У меня есть два графика, узлы которых одинаковы на обоих, но ребра разные. Я хочу нарисовать оба графика на одном графике. Это означает, что у меня одинаковые узлы, но с двумя разными цветами ребер. Но это дает мне два разных графика. Как я мог бы разместить их на одном графике, но с разными цветами ребер?

Комментарии:

1. какие библиотеки вы используете? Вероятно, это было бы хорошим началом.

Ответ №1:

Если вы используете Python, NetworkX и Matplotlib, то вы можете сделать что-то вроде этого, где у вас есть два графика с одинаковым набором узлов, и поэтому вы рисуете сначала узлы, а затем два набора ребер разными цветами.

 import networkx as nx  

G=nx.gnm_random_graph(10,20)  
G2=nx.gnm_random_graph(10,20)  
pos=nx.spring_layout(G)  

nx.draw_networkx_nodes(G,pos,node_size=80) 

nx.draw_networkx_edges(G,pos,edge_color='r')  
nx.draw_networkx_edges(G2,pos,edge_color='b')  
  

Будьте осторожны с ребрами разных цветов между одними и теми же конечными точками, они будут неразличимы.