ПочатиПочніть безкоштовно

Візуалізація звʼязності

Тут ви візуалізуєте, як змінюється звʼязність найдужче звʼязаних вершин з часом. Список найбільших значень звʼязності top_connected з попередньої вправи вже завантажено.

Пам'ятаєте defaultdict, який ви використовували в розділі 1? У цій вправі ви знову використаєте defaultdict! Як Ерік зазначив у відео, тут краще підходить defaultdict, адже звичайний словник Python спричинить KeyError, якщо спробувати отримати елемент за ключем, якого наразі немає в словнику.

У цій вправі ви використаєте вкладені цикли for. Тобто один цикл for буде всередині іншого.

Ця вправа є частиною курсу

Середній рівень Network Analysis у Python

Переглянути курс

Інструкції до вправи

  • Ініціалізуйте defaultdict порожніх списків із назвою connectivity.
  • Ітеруйтеся по top_connected за допомогою циклу for, і в тілі цього зовнішнього циклу ще раз ітеруйтеся по Gs. Усередині цього вкладеного циклу:
    • Ключами connectivity мають бути вершини n із top_connected, а значеннями — списки показників звʼязності. Тому додайте len(list(G.neighbors(n))) до connectivity[n].
  • Ітеруйтеся по connectivity за допомогою .items() і побудуйте графік звʼязності кожної вершини, передавши conn у plt.plot().

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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()
Редагувати та запускати код