如何解决使用动态网络可视化更改节点颜色
我正在尝试创建一个网络动画,显示节点如何随时间改变状态。用例是 Covid-19 的联系人跟踪。我使用基于代理的模型来模拟 Covid-19 传播。我从中提取了我的联系网络。我正在努力弄清楚 tsna 包如何改变每个时间片的节点颜色(疾病状态)。这是我的数据和渲染尝试:
# load libraries
require(sna)
require(tsna)
require(ndtv)
# get data
url <- "https://github.com/aterhorst/data/blob/master/dynamic_network.Rdata?raw=true"
download.file(url,destfile= "data/dynamic_network.Rdata",mode = "wb")
# load data
load("data/dynamic_network.Rdata")
# create a dynamic network object
nd <-networkDynamic(edge.spells = edges,vertex.spells = nodes)
# render dynamic network object
compute.animation(nd,animation.mode = "kamadakawai",slice.par = list(
start = 1,end = 12,interval = 1,aggregate.dur = 2,rule = "any"))
render.d3movie(nd,vertex.col = nodes$col,displaylabels = TRUE)
因为我的基于代理的模型非常小,边缘在第 12 天左右消失。基本上,到那时每个人都已经接触过病毒,因此进一步接触没有任何区别。我的模特不再关心。您在我的示例中看到的是静态节点颜色。我想看到的是随着疾病状态改变颜色的节点。有人可以帮我解决这个问题吗?
解决方法
我只是在 networkDynamic 语句中添加了以下内容:
nd <-networkDynamic(edge.spells = edges,vertex.spells = nodes,create.TEAs = TRUE)
我试图指定 vertex.TEA.names = "col"
并且抛出了一些东西。忽略它解决了我的问题。
TEA 的事情非常令人困惑,在线教程可以为像我这样的麻木者更好地解释这一点。也就是说,它是免费软件,我感谢 sna/tsna/ndtv 的创建者的贡献。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。