LoslegenKostenlos loslegen

Degree Centrality auf der Projektion plotten

Hier vergleichst du die Verteilungen der Degree Centrality für die folgenden Graphen: den ursprünglichen Graphen G, die Personen-Projektion peopleG und die Clubs-Projektion clubsG. So festigst du den Unterschied in der Berechnung der Degree-Centrality-Werte zwischen bipartiten und unipartiten Varianten dieser Metrik. Die Knotenmengen people und clubs sind für dich bereits geladen.

Erinnere dich aus dem Video: Die bipartiten Funktionen erwarten eine Menge von Knoten als Argument, geben aber trotzdem alle Degree-Centrality-Werte zurück. Denk auch daran, dass Degree-Centrality-Werte als Dictionaries gespeichert sind (Mapping von Knoten zu Wert).

Diese Übung ist Teil des Kurses

Fortgeschrittene Netzwerkanalyse in Python

Kurs anzeigen

Anleitung zur Übung

  • Plotte die Verteilung der Degree Centrality des ursprünglichen Graphen G mit der degree_centrality-Funktion aus dem Bipartite-Modul: nx.bipartite.degree_centrality(). Sie nimmt zwei Argumente: den Graphen G und eine der Knotenlisten (people oder clubs).
  • Plotte die Verteilung der Degree Centrality des Graphen peopleG mit der normalen/nicht-bipartiten degree_centrality-Funktion aus NetworkX: nx.degree_centrality().
  • Plotte die Verteilung der Degree Centrality des Graphen clubsG mit der normalen/nicht-bipartiten degree_centrality-Funktion aus NetworkX: nx.degree_centrality().

Interaktive Übung

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

import matplotlib.pyplot as plt 

# Plot the degree centrality distribution of both node partitions from the original graph
plt.figure()
original_dc = ____
# Remember that you can directly plot dictionary values.
plt.hist(____, alpha=0.5)
plt.yscale('log')
plt.title('Bipartite degree centrality')
plt.show()


# Plot the degree centrality distribution of the peopleG graph
plt.figure()  
people_dc = ____
plt.hist(____)
plt.yscale('log')
plt.title('Degree centrality of people partition')
plt.show()

# Plot the degree centrality distribution of the clubsG graph
plt.figure() 
clubs_dc = ____
plt.hist(____)
plt.yscale('log')
plt.title('Degree centrality of clubs partition')
plt.show()
Code bearbeiten und ausführen