Visualizando a conectividade
Aqui, você vai visualizar como a conectividade dos nós mais conectados muda ao longo do tempo. A lista de valores mais conectados, top_connected, do exercício anterior já foi carregada.
Lembra do defaultdict que você usou no Capítulo 1? Você vai usar outro defaultdict neste exercício! Como o Eric mencionou no vídeo, um defaultdict é preferível aqui, pois um dicionário Python comum geraria um KeyError se você tentasse obter um item com uma chave que não está presente no dicionário.
Este exercício vai usar loops for aninhados. Ou seja, você vai usar um for dentro de outro.
Este exercício faz parte do curso
Análise de Redes Intermediária em Python
Instruções do exercício
- Inicialize um
defaultdictde listas vazias chamadoconnectivity. - Faça a iteração sobre
top_connectedusando um loopfore, no corpo desseforexterno, itere novamente sobreGs. Dentro desse loop aninhado:- As chaves de
connectivitydevem ser os nósnemtop_connected, e os valores devem ser a lista de pontuações de conectividade. Portanto, você deve adicionarlen(list(G.neighbors(n)))aconnectivity[n].
- As chaves de
- Itere sobre
connectivityusando.items()e plote a conectividade de cada nó passandoconnparaplt.plot().
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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()