CommencerCommencer 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 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

Afficher le cours

Instructions

  • Initialisez un defaultdict de listes vides appelé connectivity.
  • Parcourez top_connected avec une boucle for, et dans le corps de cette boucle externe, parcourez à nouveau Gs. À l’intérieur de cette boucle imbriquée :
    • Les clés de connectivity doivent être les nœuds n de 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 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()
Modifier et exécuter le code