使用 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 = ___)
)