1. Обучение
  2. /
  3. Курса
  4. /
  5. Python으로 시작하는 네트워크 분석

Connected

упражнение

매트릭스 플롯으로 시각화하기

이제 첫 번째 고급 그래프 시각화 방법인 매트릭스 플롯을 사용해 볼 차례입니다. nxviz는 이를 위한 matrix() 함수를 제공합니다. 이 함수는 nxviz의 모든 최상위 API 함수와 마찬가지로 matplotlib axes 객체를 반환하며, plt.show()로 화면에 표시할 수 있습니다.

nxviz는 그래프를 체계적으로 시각화하는 패키지입니다. 내부적으로 matrix 함수는 nx.to_numpy_array(G)를 활용하여 그래프의 행렬 형태를 반환합니다. 이 행렬에서 각 노드는 하나의 열과 하나의 행에 해당하며, 두 노드 사이의 엣지는 값 1로 표시됩니다. 단, 이 과정에서 weight 메타데이터만 보존되고 나머지 메타데이터는 모두 손실됩니다. 이는 assert 문으로 직접 확인할 수 있습니다.

반대로 nx.from_numpy_array(A)를 사용하면 NumPy 배열로부터 그래프를 빠르게 생성할 수 있습니다. 기본 그래프 유형은 Graph()이며, DiGraph()로 만들고 싶다면 create_using 키워드 인수를 사용해야 합니다. 예: (nx.from_numpy_array(A, create_using=nx.DiGraph))

마지막으로, matplotlib.pyplot과 networkx는 각각 plt와 nx로 이미 임포트되어 있으며, 그래프 T도 미리 로드되어 있습니다. 실습의 편의를 위해 네트워크에서 엣지 100개만 샘플링하였습니다.

Инструкции

100 XP
  • nxviz에서 matrix를 임포트하세요.
  • 그래프 T를 매트릭스 플롯으로 나타내세요. 방법은 다음과 같습니다.
    • T를 인수로 전달하여 nv.matrix() 함수를 호출하고, 결과를 m이라는 매트릭스 플롯으로 저장하세요.
    • plt.show()를 사용하여 플롯을 화면에 표시하세요.
  • 그래프를 행렬 형식으로 변환한 다음, 방향 그래프로서 다시 NetworkX 형태로 변환하세요. 이 부분은 이미 작성되어 있습니다.
  • 각 노드에서 category 메타데이터 필드가 손실되었는지 확인하세요. 이 부분도 이미 작성되어 있으니, 답변 제출을 클릭하여 결과를 확인하세요!