Requisito previo: conceptos básicos de Python
¿Alguna vez se preguntó cómo funciona el sitio de redes sociales más popular, Facebook? ¿Cómo estamos conectados con amigos usando solo Facebook? Entonces, Facebook y otros sitios de redes sociales funcionan con una metodología llamada redes sociales. Las redes sociales se utilizan en la mayoría de los sitios de redes sociales como Facebook, Instagram y LinkedIn, etc. Tiene un efecto significativo en los especialistas en marketing para atraer clientes. Las redes sociales utilizan gráficos para crear una red. Sus Nodes son personas y los bordes son su conexión entre ellos. Dos Nodes con bordes conectados son amigos. Ahora veamos un ejemplo para entender qué son las redes sociales.
La red de 50 alumnos en una clase
La biblioteca de python más importante utilizada en las redes sociales es Networkx.
RedX
NetworkX es un paquete de gráficos que se utiliza para crear y modificar diferentes tipos de gráficos. Proporciona un entorno de desarrollo rápido para proyectos colaborativos y multidisciplinarios.
Instalación:
pip install networkx
Después de iniciar python, tenemos que importar el módulo networkx:
import networkx as nx
Los tipos básicos de gráficos incorporados son:
- Gráfico: este tipo de gráfico almacena Nodes y bordes y los bordes no están dirigidos. Puede tener bucles automáticos pero no puede tener bordes paralelos.
- Di-Graph: este tipo de gráfico es la clase base para los gráficos dirigidos. Puede tener Nodes y aristas y las aristas son de naturaleza dirigida. Puede tener bucles automáticos pero los bordes paralelos no están permitidos en Di-Graph.
- Gráfico múltiple: este tipo de gráfico es una clase de gráfico no dirigido que puede almacenar aristas múltiples o paralelas. También puede tener bucles automáticos. Los bordes múltiples son bordes múltiples entre 2 Nodes.
- Multi-DiGraph: este tipo de gráfico es una clase de gráfico dirigido que puede almacenar varios bordes. También puede tener bucles automáticos. Los bordes múltiples son bordes múltiples entre 2 Nodes.
Ejemplo de creación de gráficos:
Python3
# import networkx library import networkx as nx # create an empty undirected graph G = nx.Graph() # adding edge in graph G G.add_edge(1, 2) G.add_edge(2, 3, weight=0.9)
Dibujo de gráfico:
El dibujo se puede hacer usando la biblioteca Matplotlib.pyplot.
Python3
# import matplotlib.pyplot library import matplotlib.pyplot as plt # import networkx library import networkx as nx # create a cubical empty graph G = nx.cubical_graph() # plotting the graph plt.subplot(122) # draw a graph with red # node and value edge color nx.draw(G, pos = nx.circular_layout(G), node_color = 'r', edge_color = 'b')
Producción:
Eliminación de borde de gráfico:
Para eliminar un borde del gráfico, utilice el método remove_edge() del objeto de gráfico.
Sintaxis: G.remove_edge(u, v)
Parámetros:
- u: primer Node
- v: segundo Node
Retorno : Ninguno
Eliminación de Nodes gráficos:
Para eliminar un Node del gráfico, utilice el método remove_node() del objeto de gráfico.
Sintaxis: G.remove_node(u)
Parámetro: Node a eliminar
Retorno: Ninguno
Mostrar los vértices adyacentes:
Python3
# import networkx library import netwokx as nx # create an empty undirected graph G = nx.Graph() # add edge to the graph G.add_edge('1', '2') G.add_edge('2', '3') # print the adjacent vertices print(G.adj)
Producción:
{'1': {'2': {}}, '2': {'1': {}, '3': {}}, '3': {'2': {}}}
Publicación traducida automáticamente
Artículo escrito por sankalpsharma424 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA