Wizualizacja rozkładu centralności stopnia dla projekcji studentów
W tym ćwiczeniu zwizualizujesz rozkład centralności stopnia dla projekcji studentów. To powtórzenie dwóch zagadnień, które już znasz: centralności stopnia oraz projekcji grafów.
To ćwiczenie jest częścią kursu
Analiza sieci w Pythonie – poziom średniozaawansowany
Instrukcje do ćwiczenia
- Pobierz węzły partycji
'student'do listy o nazwiestudent_nodes.- Użyj listy składanej: iteruj po wszystkich węzłach grafu
G(razem z metadanymi) i sprawdź, czy klucz'bipartite'obiektudjest równy'student'.
- Użyj listy składanej: iteruj po wszystkich węzłach grafu
- Utwórz projekcję węzłów studentów jako graf o nazwie
G_students. Użyj funkcjinx.bipartite.projected_graph()i pamiętaj, aby podać argumentnodes=student_nodes. - Oblicz centralność stopnia grafu
G_studentsza pomocąnx.degree_centrality(). Wynik zapisz jakodcs. - Wyrysuj histogram wartości centralności stopnia.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Import necessary modules
import matplotlib.pyplot as plt
import networkx as nx
# Get the student partition's nodes: student_nodes
student_nodes = [n for n, d in ____ if d['____'] == '____']
# Create the students nodes projection as a graph: G_students
G_students = ____
# Calculate the degree centrality using nx.degree_centrality: dcs
dcs = ____
# Plot the histogram of degree centrality values
plt.hist(list(____))
plt.yscale('log')
plt.show()