CommencerCommencer gratuitement

Tracer la centralité en degré sur la projection

Vous allez comparer ici les distributions de centralité en degré pour chacun des graphes suivants : le graphe original G, la projection du graphe des personnes peopleG, et la projection du graphe des clubs clubsG. Cela renforcera la différence de calcul du score de centralité en degré entre les versions bipartites et unipartites des métriques de centralité en degré. Les listes de nœuds people et clubs ont été préchargées pour vous.

Rappelez-vous de la vidéo que les fonctions bipartites nécessitent qu’on leur passe un ensemble de nœuds, mais renvoient malgré tout tous les scores de centralité en degré. N’oubliez pas non plus que les scores de centralité en degré sont stockés sous forme de dictionnaires (associant chaque nœud à un score).

Cet exercice fait partie du cours

Analyse de réseaux intermédiaire en Python

Afficher le cours

Instructions

  • Tracez la distribution de la centralité en degré du graphe original G, en utilisant la fonction degree_centrality du module bipartite : nx.bipartite.degree_centrality(). Elle prend deux arguments : le graphe G et l’une des listes de nœuds (people ou clubs).
  • Tracez la distribution de la centralité en degré du graphe peopleG, en utilisant la fonction degree_centrality normale/non bipartite de NetworkX : nx.degree_centrality().
  • Tracez la distribution de la centralité en degré du graphe clubsG, en utilisant la fonction degree_centrality normale/non bipartite de NetworkX : nx.degree_centrality().

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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()
Modifier et exécuter le code