我试图以编程方式在 plotly 中添加图层,但似乎无法解决它的懒惰评估。例子:
p <- plot_ly()
for(kk in 1:5) {
tmp <- cbind(rnorm(1) + 0.05*rnorm(15),rnorm(1) + 0.05*rnorm(15))
p %<>% add_trace(x = tmp[,1], y = tmp[,2], type = "scatter", mode = "markers")
}
在这个例子中,我试图绘制一个高斯混合模型,但是,在查看它们之前不会评估 plotly 的参数,因此所有五个层只包含 tmp 的最终值。命令 plotly_build 应该是强制评估,但我找不到它的用法示例,显然我做错了。
p <- plot_ly()
for(kk in 1:5) {
tmp <- cbind(rnorm(1) + 0.05*rnorm(15),rnorm(1) + 0.05*rnorm(15))
p %<>% add_trace(x = tmp[,1], y = tmp[,2], type = "scatter", mode = "markers")
plotly_build(p)
}
仍然给出相同的结果。我究竟做错了什么?
最佳答案
p <- plot_ly()
for(kk in 1:5) {
tmp <- cbind(rnorm(1) + 0.05*rnorm(15),rnorm(1) + 0.05*rnorm(15))
p %<>% add_trace(x = tmp[,1], y = tmp[,2], type = "scatter", mode = "markers", evaluate = TRUE)
}
plotly 有一个评估参数。
关于r - 以编程方式将图层添加到 R 中的绘图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34316354/