En este artículo vamos a ver cómo visualizar la composición dos del grafo usando networkx. Si nos dan dos gráficos A y B, entonces su composición se puede encontrar realizando la operación de unión en el conjunto de Nodes y el conjunto de bordes de A y B.
Simplemente, si un borde está contenido entre dos vértices en cualquiera de los gráficos iniciales, estará contenido en la composición de esos gráficos.
Ejemplo:
Gráfico inicial G:
Gráfico inicial H:
Resultado de Composición de G y H:
Explicación: si nombramos los Nodes en los gráficos G y H usando números enteros, observaremos claramente que el conjunto de Nodes y aristas de G será un superconjunto de H y, por lo tanto, su unión da como resultado G.
Ejemplo 2:
Gráfico inicial G:
Gráfico inicial H:
Resultado de Composición de G y H:
Explicación: podemos ver que todos los bordes que están en el gráfico G están presentes en el gráfico H, excepto el Node entre el primer y el tercer Node desde la derecha, por lo tanto, al hacer la composición de G y H, se agregan todos los bordes de G y H al resultado.
Puntos importantes sobre la función Componer:
- Los atributos H tienen prioridad sobre los atributos G.
- El gráfico devuelto es del mismo tipo que G.
- G y H deben ser dirigidos o no dirigidos.
- G y H deben ser gráficos o multigrafos
Realizando Composición usando Python:
Usaremos la función networkx.compose() para nuestra tarea de composición de 2 gráficos.
Sintaxis: componer (G, H)
- G: Es un objeto Networkx Graph que se pasa como argumento para componer la función.
- H: También es un objeto Networkx Graph que se pasa como argumento para componer la función.
El resultado de la función de composición será la unión del conjunto de aristas y vértices de G y H.
Acercarse:
- Importaremos networkx con un alias nx.
- Cree un objeto gráfico de muestra G usando la función path_graph().
- Cree el segundo objeto de gráfico de muestra H usando la función path_graph().
- Luego llamaremos a la función componer pasando G como argumento.
- Capturaremos el objeto devuelto por la función de composición en otro objeto R.
- Luego llamaremos a la función dibujar() pasando R como un argumento que mostrará el gráfico de complemento.
Código:
Python3
# importing networkx module import networkx as nx # creating sample graph object G = nx.path_graph(7) # creating sample graph object H = nx.path_graph(3) # compose of G and H saving in R R = nx.compose(G,H) # calling draw() to visualize the complement graph nx.draw(R)
Producción:
Publicación traducida automáticamente
Artículo escrito por parthbanathia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA