Maison  >  Article  >  développement back-end  >  Créer un graphique cyclique à l'aide de Networkx en Python

Créer un graphique cyclique à l'aide de Networkx en Python

WBOY
WBOYavant
2023-09-06 14:01:05928parcourir

Un graphe cyclique est un type particulier de graphe où chaque nœud a exactement deux voisins et est connecté à d'autres nœuds dans un cycle complet. Utilisez le module Networkx de Python pour créer des diagrammes de cycle rapidement et facilement. Le graphique cyclique est généré en utilisant la fonction "networkx.cycle_graph()" et le nombre de nœuds. Ce diagramme est fréquemment utilisé dans diverses applications, notamment la modélisation de phénomènes périodiques, la représentation de structures circulaires et l'analyse de processus cycliques. Il est utile dans la théorie des graphes et dans de nombreuses applications du monde réel en raison de sa facilité d'utilisation et de sa capacité à représenter des interactions cycliques.

Qu'est-ce que NetworkX en Python ?

Un puissant package Python appelé NetworkX pour concevoir, inspecter et manipuler des réseaux ou des graphiques complexes. Il fournit une variété d'outils et de techniques pour gérer efficacement les structures graphiques. Les développeurs et les universitaires peuvent utiliser NetworkX pour modéliser rapidement les interactions entre les projets, examiner les caractéristiques du réseau, identifier les nœuds importants, localiser les chemins les plus courts, et bien plus encore. En raison de leur adaptabilité, les bibliothèques constituent des ressources importantes dans de nombreux domaines, notamment l'analyse des réseaux sociaux, les réseaux de transport, la biologie et la technologie Internet. Les programmeurs Python peuvent profiter de l'interface conviviale et des fonctionnalités étendues de NetworkX pour résoudre des problèmes complexes liés aux graphiques et en apprendre davantage sur les interconnexions de données.

Diagramme de cycle

Un graphe cyclique est un type particulier de graphe dans lequel chaque nœud est connecté à exactement deux de ses voisins, formant une seule boucle fermée ou boucle. Il n'y a pas de branches ou de grandes connexions entre les nœuds de ce graphique. Cette boucle crée une structure circulaire qui sert de caractéristique déterminante aux diagrammes de boucles. Il s’agit d’une idée fondamentale de la théorie des graphes et est souvent utilisée pour modéliser des événements cycliques ou périodiques. Les diagrammes cycliques sont utilisés dans diverses disciplines, telles que la chimie, la physique, l'informatique et la recherche sur les réseaux sociaux, où les interactions et les modèles cycliques doivent être affichés et analysés.

Propriétés

  • Chaque nœud d'un graphique en boucle est connecté à exactement deux autres nœuds, créant une boucle fermée sans branches ni impasses.

  • Le symbole d'un graphe cyclique à n nœuds est C_n, où n représente le nombre total de nœuds dans le cycle.

  • Un graphe cyclique à n nœuds a exactement n arêtes, puisque chaque nœud est connecté à ses deux voisins adjacents par une arête.

  • La dimension du graphe cyclique C_n est le plancher (n/2). Il représente la séparation maximale possible entre deux nœuds du graphique.

  • Un graphe cyclique a deux connexions de sommets et deux connexions d'arêtes, donc la suppression de l'une des deux n'entraînera pas la déconnexion du graphe.

  • Les graphiques cycliques ont des parcours fermés qui passent exactement par chaque arête car ce sont des graphiques d'Euler.

  • Il y a un cycle hamiltonien dans chaque graphe de cycle C_n, ou un cycle qui visite chaque nœud exactement une fois.

  • Les graphiques cycliques peuvent être représentés sur un plan 2D sans contenir d'intersections d'arêtes puisqu'il s'agit de graphiques planaires.

  • Les graphiques cycliques ont une symétrie de rotation dans le sens où ils conservent leur apparence après avoir été pivotés d'un multiple de 360 ​​​​degrés.

  • Si n est un nombre pair, le nombre chromatique du graphe cyclique est 2, si n est un nombre impair, il est 3.

  • Les graphiques cycliques sont utiles dans de nombreuses applications et peuvent servir de blocs de construction dans des structures graphiques plus complexes en raison de leur fonctionnalité simple et bien définie.

Méthode à utiliser

  • Module d'importation

  • Afficher l'image

Module d'importation

Lors de la création de graphiques de cycle en Python à l'aide de Networkx, le terme « module d'importation » fait référence à la fourniture des bibliothèques requises dans le script pour prendre en charge la manipulation et la visualisation du graphique. Le module « networkx » fournit spécifiquement des outils pour créer, analyser et formuler des graphiques, tandis que le module optionnel « matplotlib.pyplot » prend en charge la visualisation de graphiques. En important ces modules, nous pouvons plus facilement créer des diagrammes de cycle, analyser leurs propriétés et utiliser des techniques de visualisation pour en savoir plus sur la structure et les relations du diagramme. Cela améliore notre compréhension des modèles et des processus cycliques dans diverses applications du monde réel.

Algorithme

    Ajouter les bibliothèques requises :

  • nx importer "networkx"

  • Vous pouvez importer "matplotlib.pyplot" en tant que plt pour afficher le graphique.

  • Créez un objet graphique de cycle :

  • Pour générer un graphique de cycle, utilisez la méthode Cycle_graph() de Networkx.

  • La fonction
  • cycle_graph() accepte l'entrée num_nodes, qui représente le nombre total de nœuds.

  • L'objet graphique de cycle généré doit ensuite être attribué à une variable (comme cycle_graph).

  • Visualisation graphique (facultatif) :

  • Si une visualisation est requise, créez une mise en page qui permet aux nœuds d'être affichés de manière esthétique (par exemple pos = nx.circular_layout(cycle_graph)).

  • Utilisez la fonction nx.draw() pour dessiner des graphiques en fonction des informations et de la mise en page données.

  • Si vous souhaitez une meilleure représentation visuelle, définissez les paramètres pour les étiquettes des nœuds, les couleurs et la taille du texte.

  • Pour afficher un tracé de cycle, utilisez plt.show() pour afficher le tracé graphique (en supposant que matplotlib soit importé).

  • Renvoyer l'objet graphique de cycle.

Grammaire

import networkx as nx
import matplotlib.pyplot as plt  

def create_cycle_graph(num_nodes):
   cycle_graph = nx.cycle_graph(num_nodes)
   return cycle_graph

def visualize_graph(graph):
   pos = nx.circular_layout(graph)
   nx.draw(graph, pos, with_labels=True, node_size=1000, node_color='skyblue', 
font_size=10)
   plt.show()

if __name__ == "__main__":
   num_nodes = 5
   cycle_graph = create_cycle_graph(num_nodes)
   visualize_graph(cycle_graph)

Sortie

Créer un graphique cyclique à laide de Networkx en Python

Afficher l'image

« Afficher le tracé » fait référence au processus d'affichage d'une visualisation graphique sur l'écran lors de la construction et de la visualisation de tracés cycliques à l'aide de Networkx en Python. Utilisez la fonction "nx.draw()" pour représenter graphiquement le tracé du cycle, puis utilisez la commande "plt.show()" pour afficher le tracé dans une fenêtre interactive (où "plt" est "matplotlib.pyplot"). L'utilisateur peut ensuite visualiser le graphique de cycle avec sa structure de cycle, ses connexions de nœuds et toute autre donnée pertinente. Les propriétés et les interactions des diagrammes cycliques peuvent être plus facilement comprises et analysées en utilisant le diagramme présenté comme représentation visuelle.

Algorithme

  • Pour générer et visualiser des graphiques, importez les bibliothèques Networkx et Matplotlib.

  • Vous pouvez utiliser la saisie de l'utilisateur ou prédéfinir un certain nombre de nœuds pour le graphique cyclique.

  • Pour construire un objet Cycle Graph avec le nombre de nœuds requis, utilisez la fonction nx.cycle_graph().

  • Pour modifier l'apparence du graphique, utilisez la fonction nx.draw() avec des paramètres facultatifs.

  • Pour afficher des graphiques à l'écran, utilisez plt.show().

Exemple

import networkx as nx
import matplotlib.pyplot as plt

num_nodes = int(input("Enter the number of nodes for the Cycle Graph: "))

cycle_graph = nx.cycle_graph(num_nodes)


pos = nx.circular_layout(cycle_graph)
nx.draw(cycle_graph, pos, with_labels=True, node_size=1000, 
node_color='skyblue', font_size=10)

plt.show()

Sortie

Créer un graphique cyclique à laide de Networkx en Python

Conclusion

Enfin, en utilisant Networkx de Python, nous avons pu générer et afficher correctement le diagramme de cycle. Chaque nœud du graphique cyclique est connecté à exactement deux voisins pour indiquer une boucle fermée. Avec l'aide des puissants outils de travail graphique de Networkx, nous pouvons modéliser et analyser une variété d'événements liés aux relations cycliques du monde réel. Les programmeurs Python peuvent examiner des structures de réseau complexes, localiser des nœuds importants, trouver les chemins les plus courts et bien plus encore en utilisant l'interface conviviale et les riches fonctionnalités de Networkx. Networkx est un outil utile dans la théorie des graphes et dans diverses disciplines appliquées, car les capacités de visualisation des graphiques aident à mieux comprendre les modèles cycliques et les interconnexions.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer