視覺化邊
在這個練習中,你會學到如何依照邊的權重調整網路中邊的粗細,以及如何從網路中移除邊。這在視覺化大型且高度群聚的網路時,常常很有幫助。在這個入門章節中,我們只觸及了使用 igraph 視覺化網路的冰山一角。你會在接下來的章節持續精進這些技巧。
本練習屬於課程
R 的 Network Analysis
練習說明
- 建立一個向量
w1,其內容為朋友彼此相處小時數所對應的邊權重。 - 繪製網路,並將
edge.width設為你剛建立的權重向量。使用edge.color = 'black'可以讓所有邊都呈現黑色。 - 接著,建立新的圖形物件
g2,它以g1為基礎,但移除所有權重小於 2 小時的邊。可使用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 = ___)