CommencezCommencez gratuitement

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 en utiliserez un autre dans cet exercice! Comme Éric l'a mentionné dans la vidéo, on privilégie un defaultdict ici, car un dictionnaire Python ordinaire lèverait une KeyError si vous tentez d'obtenir un élément avec une clé qui n'est pas encore présente dans le dictionnaire.

Cet exercice utilisera des boucles for imbriquées. Autrement dit, vous utiliserez une boucle for à l'intérieur d'une autre.

Cette activité fait partie du cours

Analyse de réseaux intermédiaire en Python

Voir le cours

Instructions de l’exercice

  • Initialisez un defaultdict de listes vides nommé connectivity.
  • Parcourez top_connected avec une boucle for et, dans le corps de cette boucle externe, parcourez de nouveau Gs. À l'intérieur de cette boucle imbriquée :
    • Les clés de connectivity doivent être les nœuds n dans top_connected, et les valeurs doivent être la liste des scores de connectivité. Vous devez donc ajouter len(list(G.neighbors(n))) à connectivity[n].
  • Parcourez connectivity avec .items() et tracez la connectivité de chaque nœud en transmettant conn à plt.plot().

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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