编辑:谢谢哈维尔的建议。我忘了提一下,我想将此交互式图表合并到报表/仪表板中,因此可以与RMarkdown的HTML文档一起使用的东西是理想的,但仪表板解决方案也可以。
请考虑以下情节;红线表示实际数据,绿线表示模型生成的预测:
显示两种不同模型的预测;一个在前100个小时内接受了培训,另一个在前216个小时内接受了培训。然后为看不见的数据点生成预测,然后进行绘制。
我想做的是训练n
模型,例如每12小时以不断扩大的窗口方式发送一次。完成此操作后,我想以交互方式展示结果,用户可以单击/滑动某些东西来回移动垂直线,从而更改显示哪个模型的预测。关键是要直观地显示不同训练时间的效果。
我是R语言中崭新的互动图的新手;可以做到这一点而不会带来太多麻烦吗?
答案 0 :(得分:4)
您可以使用manipulate
软件包进行快速交互式绘图。 Shiny
需要进行更精细的调整,并且更加耗时。
这是一个可复制的示例供您测试: 这将创建滑块:
library(manipulate)
manipulate(plot(1:x), x = slider(1, 100))
在此处放置代码以创建交互式绘图:
manipulate(
plot(cars, xlim = c(0, x.max), type = type, ann = label),
x.max = slider(10, 25, step=5, initial = 25),
type = picker("Points" = "p", "Line" = "l", "Step" = "s"),
label = checkbox(TRUE, "Draw Labels"))
查看CRAN操作包以获取更多信息: https://cran.r-project.org/web/packages/manipulate/index.html
答案 1 :(得分:0)
我能够使用this link底部的示例来完成此操作。
library(shiny)
sliderInput("n", "Training length:", 100, min=24, max= 11*24)
renderPlot({
plotPredictCurve(data= df, trainLength= input$n)
})