LoslegenKostenlos loslegen

Konnektivität visualisieren

Hier visualisierst du, wie sich die Konnektivität der am besten vernetzten Knoten im Zeitverlauf verändert. Die Liste der Top-Konnektivitätswerte, top_connected, aus der vorherigen Übung wurde geladen.

Erinnerst du dich an das defaultdict aus Kapitel 1? In dieser Übung verwendest du wieder ein defaultdict! Wie Eric im Video erwähnt hat, ist ein defaultdict hier besser geeignet, weil ein normales Python-Wörterbuch einen KeyError auslöst, wenn du versuchst, ein Element mit einem Schlüssel abzurufen, der noch nicht im Wörterbuch vorhanden ist.

Diese Übung verwendet geschachtelte for-Schleifen. Das heißt, du nutzt eine for-Schleife innerhalb einer anderen.

Diese Übung ist Teil des Kurses

Fortgeschrittene Netzwerkanalyse in Python

Kurs anzeigen

Anleitung zur Übung

  • Initialisiere ein defaultdict leerer Listen mit dem Namen connectivity.
  • Iteriere über top_connected mit einer for-Schleife und iteriere im Rumpf dieser äußeren for-Schleife erneut über Gs. In dieser geschachtelten Schleife gilt:
    • Die Schlüssel von connectivity sollen die Knoten n in top_connected sein, und die Werte die Liste der Konnektivitätswerte. Daher musst du len(list(G.neighbors(n))) an connectivity[n] anhängen.
  • Iteriere über connectivity mit .items() und plotte die Konnektivität jedes Knotens, indem du conn an plt.plot() übergibst.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Import necessary modules
import matplotlib.pyplot as plt
from collections import defaultdict

# Create a defaultdict in which the keys are nodes and the values are a list of connectivity scores over time
connectivity = ____
for n in ____:
    for g in ____:
        connectivity[____].____(len(____))

# Plot the connectivity for each node
fig = plt.figure() 
for n, conn in ____: 
    plt.plot(____, label=n) 
plt.legend()  
plt.show()
Code bearbeiten und ausführen