使用 ggiraph 製作互動式圖形
到目前為止,我們都在製作靜態的網路圖。不過,圖裡可能有很多特性想要視覺化;如果一次全都顯示,畫面會變得難以閱讀。這正是互動式圖形大放異彩的地方。你可以先繪出基本的圖結構,接著依照使用者與圖形互動的方式,顯示不同的頂點與邊的屬性。在本課中,我們會延續先前使用 ggnetwork 的作法。首先,我們會對共享單車網路取 1% 的子樣本(縮小以利視覺化),並建立一個 ggnetwork 圖。接著,我們會把中介中心性加入為頂點屬性,並建立一個互動式圖形,讓滑鼠指標懸停在頂點上時顯示該頂點的中心性。
本練習屬於課程
案例研究:R 的網路分析
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# From previous step
static_network <- ggplot(
ggnetwork(trip_g_simp, arrow.gap = 0.01),
aes(x = x, y = y, xend = xend, yend = yend)
) +
geom_edges() +
geom_nodes(aes(size = cent)) +
theme_blank()
interactive_network <- static_network +
# Add an interactive point layer
___(
# Map tooltip and data_id to centrality
aes(tooltip = ___, data_id = ___)
)