我正在尝试绘制多条线,使用R和plot_ly结合add_trace。如果我使用以下代码,它就像预期的那样工作:
df <- data.frame(x=c(1,2,3), y=c(2,4,5), y=c(4,1,3))
p <- plot_ly(mode="lines", type="scatter")
p <- add_trace(p, x=~df[,1], y=~df[,2])
p <- add_trace(p, x=~df[,1], y=~df[,3])
p
如果我尝试使用for-loop而不是这样,它就不起作用了:
df <- data.frame(x=c(1,2,3), y=c(2,4,5), y=c(4,1,3))
p <- plot_ly(mode="lines", type="scatter")
for(i in 1:2)
{
p <- add_trace(p, x=~df[,1], y=~df[,i])
}
p
请有人解释一下,这里发生了什么以及如何修复第二版? 感谢
答案 0 :(得分:0)
我无法准确地解释这里发生了什么事情,因为几个月前我们已经做了很多改变,我从未真正赶上过。
将您的for
索引更改为2:3
以符合您的数据,并将~df[,]
电话放到普通df[,]
,这样就可以了。它至少在我的结尾。