НачатьНачать бесплатно

Визуализация центральности по степени на проекции

В этом упражнении вы сравните распределения центральности по степени для трёх графов: исходного графа G, проекции на людей peopleG и проекции на клубы clubsG. Это поможет вам лучше понять разницу в вычислении центральности по степени между двудольными и однодольными версиями соответствующих метрик. Списки узлов people и clubs уже загружены для вас.

Напомним из видео: двудольные функции требуют передачи контейнера узлов, однако возвращают оценки центральности по степени для всех узлов. Также помните, что оценки центральности по степени хранятся в виде словарей, сопоставляющих узел с его оценкой.

Это упражнение является частью курса

Средний уровень сетевого анализа на Python

Посмотреть курс

Инструкции к упражнению

  • Постройте распределение центральности по степени для исходного графа G, используя функцию degree_centrality из двудольного модуля: nx.bipartite.degree_centrality(). Она принимает два аргумента: граф G и один из списков узлов (people или clubs).
  • Постройте распределение центральности по степени для графа peopleG, используя обычную (не двудольную) функцию degree_centrality из NetworkX: nx.degree_centrality().
  • Постройте распределение центральности по степени для графа clubsG, используя обычную (не двудольную) функцию degree_centrality из NetworkX: nx.degree_centrality().

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

import matplotlib.pyplot as plt 

# Plot the degree centrality distribution of both node partitions from the original graph
plt.figure()
original_dc = ____
# Remember that you can directly plot dictionary values.
plt.hist(____, alpha=0.5)
plt.yscale('log')
plt.title('Bipartite degree centrality')
plt.show()


# Plot the degree centrality distribution of the peopleG graph
plt.figure()  
people_dc = ____
plt.hist(____)
plt.yscale('log')
plt.title('Degree centrality of people partition')
plt.show()

# Plot the degree centrality distribution of the clubsG graph
plt.figure() 
clubs_dc = ____
plt.hist(____)
plt.yscale('log')
plt.title('Degree centrality of clubs partition')
plt.show()
Редактировать и запускать код