Vykreslení centralit stupně na projekci
V tomto cvičení porovnáš rozdělení centralit stupně pro tři grafy: původní graf G, projekci grafu lidí peopleG a projekci grafu klubů clubsG. Díky tomu lépe pochopíš rozdíl ve výpočtu centralit stupně mezi bipartitní a unipartitní verzí těchto metrik. Seznamy uzlů people a clubs jsou už načtené.
Nezapomeň, že bipartitní funkce vyžadují předání kontejneru uzlů, ale vrátí centrality stupně pro všechny uzly. Centrality stupně jsou uloženy jako slovníky (mapování uzel → skóre).
Toto cvičení je součástí kurzu
Intermediate Network Analysis in Python
Pokyny k cvičení
- Vykresli rozdělení centralit stupně původního grafu
Gpomocí funkcedegree_centralityz bipartitního modulu:nx.bipartite.degree_centrality(). Funkce přijímá dva argumenty: grafGa jeden ze seznamů uzlů (peopleneboclubs). - Vykresli rozdělení centralit stupně grafu
peopleGpomocí standardní (nebipartitní) funkcedegree_centralityz NetworkX:nx.degree_centrality(). - Vykresli rozdělení centralit stupně grafu
clubsGpomocí standardní (nebipartitní) funkcedegree_centralityz NetworkX:nx.degree_centrality().
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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()