Zacznij terazZacznij za darmo

Rysowanie rozkładu centralności stopnia na projekcji

W tym ćwiczeniu porównasz rozkłady centralności stopnia dla trzech grafów: oryginalnego grafu G, projekcji grafu osób peopleG oraz projekcji grafu klubów clubsG. Pozwoli ci to lepiej zrozumieć różnicę między obliczaniem centralności stopnia w wersji dwudzielnej i jednodzielnej. Listy węzłów people i clubs zostały już wczytane.

Pamiętaj, że funkcje dwudzielne wymagają podania kontenera węzłów, ale i tak zwracają wartości centralności dla wszystkich węzłów. Miej też na uwadze, że wyniki centralności stopnia są przechowywane jako słowniki (mapujące węzeł na wartość).

To ćwiczenie jest częścią kursu

Analiza sieci w Pythonie – poziom średniozaawansowany

Zobacz kurs

Instrukcje do ćwiczenia

  • Wyrysuj rozkład centralności stopnia dla oryginalnego grafu G, używając funkcji degree_centrality z modułu bipartite: nx.bipartite.degree_centrality(). Przyjmuje ona dwa argumenty: graf G oraz jedną z list węzłów (people lub clubs).
  • Wyrysuj rozkład centralności stopnia dla grafu peopleG, używając zwykłej (nie-dwudzielnej) funkcji degree_centrality z NetworkX: nx.degree_centrality().
  • Wyrysuj rozkład centralności stopnia dla grafu clubsG, używając zwykłej (nie-dwudzielnej) funkcji degree_centrality z NetworkX: nx.degree_centrality().

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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()
Edytuj i uruchom kod