Heim  >  Artikel  >  Java  >  Zeichnen Sie vollständige Diagramme mit Networkx in Python

Zeichnen Sie vollständige Diagramme mit Networkx in Python

王林
王林nach vorne
2023-09-06 16:21:121121Durchsuche

Zeichnen Sie vollständige Diagramme mit Networkx in Python

Einführung

Eine der wichtigsten Ideen in der Graphentheorie ist die Idee des gesamten Graphen. Es besteht aus „Punkten“, sogenannten „Knoten“, die alle durch „Kanten“ verbunden sind. Mit anderen Worten: Es gibt mehr Links. Vollständige Diagramme sind in vielen Bereichen wichtig, beispielsweise in Computernetzwerken, sozialen Netzwerken und bei der Lösung von Optimierungsproblemen.

Networkx ist ein leistungsstarkes Python-Tool, mit dem Programmierer und Datenwissenschaftler komplexe Diagramme einfach verarbeiten und anzeigen können. Mit der benutzerfreundlichen Oberfläche und den vielen Funktionen von Networkx können Benutzer problemlos Diagramme erstellen, bearbeiten, visualisieren und verschieben. Als solches ist es ein wichtiges Werkzeug zum Verständnis der reichen Welt der Graphentheorie und ihrer Anwendung auf Datenstrukturen und andere Bereiche.

Installieren Sie Networkx

Networkx kann mit zwei der bekanntesten Paketmanager zu Python hinzugefügt werden. Die zu ihrer Erstellung verwendeten Pakete heißen pip und conda. Wie auch immer, das ist alles, was Sie tun müssen, um Networkx zum Laufen zu bringen -

Verwenden Sie pip (für Windows

  • Öffnen Sie eine Befehlszeilenschnittstelle (z. B. Eingabeaufforderung unter Windows, Terminal unter Mac OS/Linux).

  • Stellen Sie sicher, dass Python auf Ihrem System installiert ist. Sie können dies überprüfen, indem Sie python --version über die Befehlszeile ausführen.

  • Aktualisieren Sie pip auf die neueste Version, indem Sie pip install --upgrade pip ausführen.

  • Um Networkx zu installieren, geben Sie einfach pip install networkx ein und drücken Sie die Eingabetaste.

pip lädt jetzt automatisch die neueste Version von Networkx und seinen Abhängigkeiten herunter und installiert sie

Verwenden von Conda (für Mac)

  • Wenn Sie Anaconda oder Miniconda installiert haben, öffnen Sie Terminal oder Anaconda Prompt.

  • Wenn Sie Anaconda oder Miniconda nicht haben, laden Sie bitte die entsprechende Version von der offiziellen Website herunter (https://www.anaconda.com/products/individual) und installieren Sie sie.

  • Führen Sie nach dem Öffnen der Anaconda-Eingabeaufforderung den folgenden Befehl aus: conda installiere -c conda-forge networkx.

  • conda löst nun die Abhängigkeiten auf und installiert Networkx auf Ihrem System.

Nach Abschluss eines der oben genannten Schritte sollte Networkx erfolgreich auf Ihrem Computer installiert sein und Sie können es zum Generieren und Analysieren von Diagrammen in Python verwenden.

Um die Installation zu überprüfen, können Sie Networkx in eine interaktive Python-Shell oder ein Python-Skript integrieren, indem Sie import networkx eingeben. Wenn keine Fehler vorliegen, ist die Installation erfolgreich und Sie können Networkx verwenden, um verschiedene graphbezogene Aufgaben und Algorithmen zu erkunden

Erstellen Sie vollständige Diagramme

Networkx erleichtert die Erstellung des gesamten Diagramms. Ein vollständiger Graph ist ein Graph, bei dem eine eindeutige Kante jedes Paar eindeutiger Knoten verbindet. Die Methode „complete_graph()“ in Networkx kann zum Erstellen des gesamten Diagramms verwendet werden. Die Anzahl der Knoten im Diagramm veranschaulicht, wie das gesamte Diagramm bestehend aus fünf Knoten erstellt wird

import networkx as nx

# Create a complete graph with 5 nodes
complete_graph = nx.complete_graph(5)

Knoten und Kanten hinzufügen

Networkx erleichtert das Hinzufügen von Knoten und Links zu Ihrem Diagramm, unabhängig davon, ob das Diagramm voll ist oder nicht. Wir fügen einen einzelnen Knoten mit der Methode add_node() hinzu und verwenden den Knotennamen als Eingabe. Als Beispiel -

Python-Code

complete_graph.add_node(6)
Die Methode

add_nodes_from() verwendet eine Liste von Knotenbezeichnungen als Parameter, wodurch wir mehrere Knoten gleichzeitig hinzufügen können. Die Methode zum Einschließen von Kanten ist dieselbe. Verwenden Sie die Methode add_edge(), um eine Verbindung zwischen den Knoten 1 und 2 zu erstellen -

Python-Code

complete_graph.add_edge(1, 2)

Sie können eine Liste von Tupeln (wobei jedes Tupel eine Kante zwischen zwei Knoten darstellt) an die Methode add_edges_from() übergeben, um mehrere Kanten gleichzeitig hinzuzufügen.

Python-Code

edges_to_add = [(3, 4), (4, 0), (2, 3)]
complete_graph.add_edges_from(edges_to_add)

Networkx ermöglicht Ihnen außerdem die Anpassung von Kanten mit zusätzlichen Eigenschaften wie Gewichtungen und Beschriftungen, was in vielen diagrammbasierten Anwendungsfällen nützlich sein kann.

Visualisieren Sie das vollständige Diagramm

Um die Struktur und Eigenschaften eines Diagramms zu verstehen, muss man es als Ganzes visualisieren. Networkx arbeitet mit dem Matplotlib-Toolkit zusammen, um die Diagrammvisualisierung zum Kinderspiel zu machen. Mit der Methode draw() von Networkx können wir ein umfassendes Diagramm erstellen -

Python-Code

import matplotlib.pyplot as plt

# Draw the complete graph
nx.draw(complete_graph, with_labels=True, node_color='skyblue', node_size=800,
font_size=10)

# Show the plot
plt.show()

Greifen Sie auf grafische Informationen zu

Networkx bietet Ihnen verschiedene Möglichkeiten, wichtige Details des gesamten Diagramms abzurufen. Beispielsweise können wir die Methode nodes() verwenden, um eine Liste von Knoten zu erhalten -

Python-Code

all_nodes = complete_graph.nodes()

Wir können die Methode „edges()“ verwenden, um die Kantenliste abzurufen

Python-Code

all_edges = complete_graph.edges()

Wir können auch die Degree()-Methode verwenden, um die Gradverteilung eines Knotens zu ermitteln, was ein Wörterbuch mit Knoten als Schlüsseln und Graden als Werten ergibt

Python-Code

degree_distribution = complete_graph.degree()

Durch die Betrachtung dieser Informationen können wir viel über die Struktur und Eigenschaften des gesamten Diagramms lernen, was für viele Methoden und Anwendungen, die Diagramme verwenden, wichtig ist.

Apps

Vollständige Diagramme haben in der realen Welt viele Verwendungsmöglichkeiten, weil sie zeigen, wie alles miteinander verknüpft ist. Sie sind auch eine tolle Möglichkeit, komplexe Zusammenhänge zu verstehen

  • Soziale Netzwerke – Vollständiges Diagramm, das zeigt, wie Menschen in kleinen sozialen Gruppen miteinander verbunden sind. Dies wird grundsätzlich in einer Kleinstadt oder einer Gruppe von Freunden verwendet

  • Transportsystem – Komplettes Transportnetzwerk mit klaren Verbindungen zwischen allen Standorten und angezeigt mit vollständigen Diagrammen. Sie helfen dabei, den besten Ansatz zu finden und die Infrastruktur zu planen

  • Computernetzwerk – Alle Geräte im Netzwerk können in einem vollständigen Diagramm direkt miteinander kommunizieren. Sie helfen Menschen zu verstehen, wie Daten gesendet werden und wie mit Fehlern umgegangen wird.

Fazit

Zusammenfassend lässt sich sagen, dass die Arbeit mit vollständigen Diagrammen in Python mithilfe von Networkx eine völlig neue Welt an Datenstruktur- und Diagrammtheorieoptionen eröffnet. Networkx bietet Ihnen eine benutzerfreundliche und effiziente Möglichkeit, vollständige Diagramme zu erstellen, anzuzeigen und zu prüfen. Vollständige Diagramme sind wichtig für das Verständnis der Komplexität vollständig verbundener Netzwerke und machen sie in vielen realen Situationen nützlich. Vollständige Diagramme zeigen, wie sich Konnektivität und Geschwindigkeit in allen Bereichen auswirken, von sozialen Netzwerken über Transportsysteme bis hin zu Computernetzwerken. Durch die Nutzung der Leistungsfähigkeit von Networkx können Entwickler und Forscher mehr lernen, das Systemdesign verbessern und schwierige Probleme in vielen verschiedenen Bereichen lösen. Jeder, der sich für eine diagrammbasierte Datenanalyse interessiert, wird es von Vorteil finden, vollständige Diagramme mit Python und Networkx anzuzeigen.

Das obige ist der detaillierte Inhalt vonZeichnen Sie vollständige Diagramme mit Networkx in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen