시작하기무료로 시작하기

간선 시각화

이 연습 문제에서는 간선의 가중치에 따라 네트워크의 간선 두께를 조절하는 방법과, 큰 규모이거나 군집이 많은 네트워크를 더 효과적으로 시각화하기 위해 네트워크에서 간선을 제거하는 방법을 배웁니다. 이번 입문 챕터에서는 igraph 네트워크 시각화의 가능한 작업 중 극히 일부만 다뤘습니다. 다음 챕터들에서 이러한 기술을 계속 확장해 나가실 거예요.

이 연습은 강의의 일부입니다

R로 하는 네트워크 분석

강의 보기

연습 안내

  • 친구들이 함께 보낸 시간(시간 수)을 바탕으로 간선 가중치 벡터 w1을 생성하세요.
  • 방금 만든 가중치 벡터를 edge.width로 설정하여 네트워크를 그리세요. edge.color = 'black'을 사용하면 모든 간선이 검은색으로 표시돼요.
  • 다음으로, g1 네트워크에서 가중치가 2시간 미만인 모든 간선을 제거한 새로운 그래프 객체 g2를 만드세요. 이를 위해서는 delete_edges()를 사용하며, 인자는 두 개입니다. 첫 번째는 그래프 객체이고, 두 번째는 제거할 간선들의 부분집합입니다. 이번 경우에는 가중치가 2시간 미만인 모든 간선을 제거하면 됩니다.
  • 마지막으로, 적절한 간선 두께 벡터와 레이아웃을 사용하여 새로운 네트워크 g2를 그리세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

library(igraph)

# Create a vector of weights based on the number of hours each pair spend together
w1 <- E(g1)$___

# Plot the network varying edges by weights
m1 <- layout_nicely(g1)
plot(g1, 
        vertex.label.color = "black", 
        edge.color = 'black',
        edge.width = ___,
        layout = m1)


# Create a new igraph object by deleting edges that are less than 2 hours long 
g2 <- delete_edges(g1, E(g1)[___ < ___])


# Plot the new graph 
w2 <- E(g2)$hours
m2 <- layout_nicely(g2)

plot(g2, 
     vertex.label.color = "black", 
     edge.color = 'black',
     edge.width = ___,
     layout = ___)
코드 편집 및 실행