Rappresenta la degree centrality sulla proiezione
Qui confronterai le distribuzioni della degree centrality per ciascuno dei seguenti grafi: il grafo originale G, la proiezione del grafo delle persone peopleG e la proiezione del grafo dei club clubsG. Questo ti aiuterà a fissare la differenza nel calcolo del punteggio di degree centrality tra le versioni bipartite e unipartite delle metriche. Le liste di nodi people e clubs sono già state caricate per te.
Ricorda dal video che le funzioni per grafi bipartiti richiedono di passare un contenitore di nodi, ma restituiscono comunque tutti i punteggi di degree centrality. Ricorda anche che i punteggi di degree centrality sono memorizzati come dizionari (mappano ciascun nodo al proprio punteggio).
Questo esercizio fa parte del corso
Analisi di reti intermedia in Python
Istruzioni dell'esercizio
- Rappresenta la distribuzione della degree centrality del grafo originale
G, usando la funzionedegree_centralitydel modulo bipartite:nx.bipartite.degree_centrality(). Richiede due argomenti: il grafoGe una delle liste di nodi (peopleoclubs). - Rappresenta la distribuzione della degree centrality del grafo
peopleG, usando la normale funzione non bipartitadegree_centralitydi NetworkX:nx.degree_centrality(). - Rappresenta la distribuzione della degree centrality del grafo
clubsG, usando la normale funzione non bipartitadegree_centralitydi NetworkX:nx.degree_centrality().
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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()