交互式 javascript 可视化
另一个广泛使用的交互式可视化框架是 D3.js。它对网络图有一套特定规范,我们可以在 R 中自动生成。好处是非常方便:只需几行代码,您就能创建完全交互的 D3.js 图表。缺点是,真正的自定义通常需要直接编辑 R 输出的 javascript 源码(超出本课程范围)。尽管如此,使用 d3network 库,您可以在 R 中快速、轻松地创建漂亮的 D3.js 网络图。本节我们将载入 #rstats 的 Twitter 数据集并添加社群归属。接着,我们只取其中几个社群构成一个子图,并渲染一个 D3.js 网络图。
推文图对象 retweet_samp 已可用。
本练习是课程的一部分
案例研究:用 R 进行网络分析
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Run this to see the static version of the plot
ggplot(ggnetwork(retweet_samp, arrow.gap = 0.01),
aes(x = x, y = y, xend = xend, yend = yend)) +
geom_edges(color = "black") +
geom_nodes(aes(color = as.factor(comm))) +
theme_blank()
# Convert retweet_samp to a networkD3 object
nd3 <-igraph_to_networkD3(___, V(___)$___)
# View the data structure
str(nd3)