Visualiser la connectivité
Ici, vous allez visualiser comment la connectivité des nœuds les plus connectés évolue dans le temps. La liste des valeurs les plus connectées, top_connected, provenant de l’exercice précédent, a été chargée.
Vous vous souvenez du defaultdict utilisé au chapitre 1 ? Vous allez en utiliser un autre dans cet exercice ! Comme Eric l’a mentionné dans la vidéo, un defaultdict est préférable ici, car un dictionnaire Python classique déclencherait un KeyError si vous essayez de récupérer un élément dont la clé n’est pas encore présente dans le dictionnaire.
Cet exercice utilise des boucles for imbriquées. Autrement dit, vous utiliserez une boucle for à l’intérieur d’une autre.
Cet exercice fait partie du cours
Analyse de réseaux intermédiaire en Python
Instructions
- Initialisez un
defaultdictde listes vides appeléconnectivity. - Parcourez
top_connectedavec une bouclefor, et dans le corps de cette boucle externe, parcourez à nouveauGs. À l’intérieur de cette boucle imbriquée :- Les clés de
connectivitydoivent être les nœudsndetop_connected, et les valeurs doivent être la liste des scores de connectivité. Vous devez donc ajouterlen(list(G.neighbors(n)))àconnectivity[n].
- Les clés de
- Parcourez
connectivityavec.items()et tracez la connectivité de chaque nœud en transmettantconnàplt.plot().
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import necessary modules
import matplotlib.pyplot as plt
from collections import defaultdict
# Create a defaultdict in which the keys are nodes and the values are a list of connectivity scores over time
connectivity = ____
for n in ____:
for g in ____:
connectivity[____].____(len(____))
# Plot the connectivity for each node
fig = plt.figure()
for n, conn in ____:
plt.plot(____, label=n)
plt.legend()
plt.show()