R 中的模拟空间数据表示
Simulated spatial data representation in R
我想可视化以下模拟数据集:
time <- seq(1,10)
N.1 <- c(0,0,0,0,0,0,0,0,0,0)
N.2 <- c(0,0,0,0,0,0,0,0,0,0)
N.3 <- c(0,0,0,0,0,0,0,0,0,1)
N.4 <- c(0,1,5,6,10,1,2,2,6,7)
N.5 <- c(0,0,0,0,0,0,0,0,0,0)
N.6 <- c(0,0,1,0,0,0,0,0,0,0)
N.7 <- c(0,1,1,2,2,4,6,6,6,3)
result_snip <- data.frame(time,N.1,N.2,N.3,N.4,N.5,N.6, N.7)
随着时间的推移,该模拟跟踪了 7 个人群中的一个人群中受感染的个体数量。人口以循环方式连接。
(使用 igraph 包创建的图像)
我想创建一个图表,粗略显示每个人群中的感染人数,同时显示人群的连通性。例如,节点的大小或它们的颜色可能与感染人数成正比。但是,对于可视化此数据集的最佳方式,我愿意接受任何建议。
感谢您考虑这个问题。
我想你可以试试下面的代码
g <- make_ring(length(result_snip) - 1) %>%
set_vertex_attr(name = "name", value = names(result_snip)[-1])
g_layout <- layout_nicely(g)
apply(
result_snip,
1,
function(v) {
g %>%
set_vertex_attr(name = "color", value = v[-1] != 0) %>%
set_vertex_attr(name = "size", value = 10 + v[-1]) %>%
plot(main = paste0(names(v[1]),"=", v[1]), layout = g_layout)
}
)
这将生成一系列图,其中一个看起来像
我想可视化以下模拟数据集:
time <- seq(1,10)
N.1 <- c(0,0,0,0,0,0,0,0,0,0)
N.2 <- c(0,0,0,0,0,0,0,0,0,0)
N.3 <- c(0,0,0,0,0,0,0,0,0,1)
N.4 <- c(0,1,5,6,10,1,2,2,6,7)
N.5 <- c(0,0,0,0,0,0,0,0,0,0)
N.6 <- c(0,0,1,0,0,0,0,0,0,0)
N.7 <- c(0,1,1,2,2,4,6,6,6,3)
result_snip <- data.frame(time,N.1,N.2,N.3,N.4,N.5,N.6, N.7)
随着时间的推移,该模拟跟踪了 7 个人群中的一个人群中受感染的个体数量。人口以循环方式连接。
(使用 igraph 包创建的图像)
我想创建一个图表,粗略显示每个人群中的感染人数,同时显示人群的连通性。例如,节点的大小或它们的颜色可能与感染人数成正比。但是,对于可视化此数据集的最佳方式,我愿意接受任何建议。
感谢您考虑这个问题。
我想你可以试试下面的代码
g <- make_ring(length(result_snip) - 1) %>%
set_vertex_attr(name = "name", value = names(result_snip)[-1])
g_layout <- layout_nicely(g)
apply(
result_snip,
1,
function(v) {
g %>%
set_vertex_attr(name = "color", value = v[-1] != 0) %>%
set_vertex_attr(name = "size", value = 10 + v[-1]) %>%
plot(main = paste0(names(v[1]),"=", v[1]), layout = g_layout)
}
)
这将生成一系列图,其中一个看起来像