El gráfico de piruleta consta de 2 componentes, un gráfico completo llamado clique y un gráfico de ruta. Más precisamente, L (m, n) es un gráfico con un gráfico completo de m Nodes y un gráfico de ruta de n Nodes.
L (4,2) Gráfico de piruleta:
Aquí vamos a ver las propiedades de este gráfico:
Así que no |
Propiedades del gráfico Lollipop: |
---|---|
1 |
Es un gráfico conexo con dos componentes clique y path graph. |
2 |
El número de vértices es m + n. |
3 |
El número de aristas = Número de aristas en el gráfico completo + Número de aristas en el gráfico de ruta. |
4 |
El número de aristas=m(m-1)/2 + n. |
5 |
Diámetro del gráfico de piruleta = n+1. |
6 |
Es un gráfico cíclico ya que los ciclos están contenidos en una camarilla del gráfico de piruleta. |
7 |
Es como un gráfico de barra sin una de las barras. |
8 |
Para el gráfico completo, los Nodes están etiquetados de 0 a m-1. |
9 |
Y m a m+n-1 para el gráfico de ruta. |
10 |
El gráfico completo y el gráfico de ruta se unen a través de un borde (m – 1, m). |
Usaremos el módulo networkx para realizar un gráfico Lollipop. Viene con una función incorporada networkx.lollipop_graph() y se puede ilustrar usando el método networkx.draw(). Este módulo en Python se usa para visualizar y analizar diferentes tipos de gráficos.
Sintaxis: networkx.lollipop_graph(m,n)
Parámetros:
- M: Número de Nodes en el gráfico completo (clique)
- N: Número de Nodes en el gráfico de ruta.
networkx.draw(G, tamaño_Node, color_Node)
- Se utiliza para realizar el gráfico pasando el objeto del gráfico.
- G: Se refiere al objeto gráfico de Tutte
- node_size: Se refiere al tamaño de los Nodes.
- node_color: Se refiere al color de los Nodes.
Ejemplo 1: crear un gráfico de piruleta simple
Acercarse:
- Importaremos la red del módulo requerido
- Luego crearemos un objeto gráfico usando networkx.lollipop_graph(m,n).
- Para realizar el gráfico, usaremos networkx.draw(G, node_color=’green’)
- Con tres argumentos, el primero es un objeto gráfico y los otros dos se usan para establecer el color y el tamaño del Node.
Código:
Python3
# import required module import networkx # create object G = networkx.lollipop_graph(4, 2) # illustrate graph networkx.draw(G, node_color='green')
Producción:
Ejemplo 2: Cambiar el tamaño de los Nodes.
Acercarse:
- Importaremos la red del módulo requerido.
- Luego crearemos un objeto gráfico usando networkx.lollipop_graph(m,n).
- Para realizar el gráfico, usaremos networkx.draw(G, node_color=’green’,node_size=1500)
- Tenga en cuenta que aquí hemos pasado un argumento adicional en la función de dibujo, a saber, node_size.
- Este argumento adicional determina el tamaño relativo del Node.
Código:
Python3
# import required module import networkx # create object G = networkx.lollipop_graph(6, 2) # illustrate graph networkx.draw(G, node_color='green', node_size=1500)
Producción:
Ejemplo 3: Crear un gráfico Lollipop sin usar la función lollipop_graph().
Acercarse:
- Importaremos el módulo requerido networkx como nx.
- Luego definiremos manualmente la función lollipop_graph.
- Primero crearemos el gráfico completo usando la función complete_graph.
- Entonces tendremos n Nodes numerados de m a m+n-1 que serán de la parte recta de lollipop
- Luego uniremos los Nodes adyacentes para completar la parte del gráfico de ruta de lollipop.
- Finalmente uniremos las dos partes disjuntas para obtener el resultado final.
- Tenga en cuenta que se utilizan dos condiciones if para verificar si es necesario agregar el número de Nodes en cualquiera de las partes o si esa parte debe mantenerse vacía.
Código:
Python3
# importing networkx import networkx as nx def lollipop_graph(m, n): # the complete graph part. G = nx.complete_graph(m) # adding path graph edges. G.add_nodes_from([v for v in range(m, m+n)]) if n > 1: # joining adjacent path graph edges. G.add_edges_from([(v, v+1) for v in range(m, m + n - 1)]) # connect complete graph to path graph if m > 0: G.add_edge(m - 1, m) return G # invoking the function defined. G = lollipop_graph(5, 2) nx.draw(G)
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