我想在闪亮的应用中绘制图表。然后我想在同一个图表上添加多个阴影。在我向您展示我的代码之前,让我定义我的样本数据。
dg= reactive ({dygraph(X1(), main ="interactive graph",
xlab = "time frame",
ylab = "records" ) %>% dyRangeSelector() })
# I have a table for the shades to be added, it's defined with reactive
shade_tab=reactive({ Panne[Panne$Equipement==input$machine,] })
# add shades
for( i in 1:nrow(shade_tab()))
{ dg()= reactive({
dyShading(dg(), from= shade_tab()$Date[i],
to = shade_tab()$Date[i] + 24*60*60 ,
color = 'black'
})
}
output$dygraph <- renderDygraph({ dg()() })
这是我试图运行的代码,但它不起作用。任何帮助将不胜感激。
答案 0 :(得分:1)
必须在反应环境中调用反应式表达式。因此,shade_tab()
不会在for
中起作用,因为它不属于被动环境。你可以解决这个问题,将for
包裹在observe
内。
https://shiny.rstudio.com/articles/的基础部分非常好地解释了这一点:)