相关疑难解决方法(0)

在Shiny R Studio中重置动画

我正在使用R Studio的Shiny构建一个动画图形项目.目前"去!" 按钮启动动画.我想让"重置"按钮重新初始化变量并重新运行动画,但由于Shiny不允许对输入$按钮值进行代码内更改,因此我不知道如何执行此操作.真实的项目在形式上与下面的样本块类似,但涉及的更多.动画是传达信息的组成部分.当项目完成后,我打算将它部署在Shiny服务器上,因此我希望用户能够使用不同的选择重新运行动画,而无需重新打开链接.

    #  ui.R
library(shiny)

shinyUI(fluidPage(

  # Application title
  headerPanel("Cost Explorer"),


  sidebarPanel(
    actionButton("goButton", "Go!"),
    actionButton("reset", "Reset"),

    sliderInput("myvar", label=h6("Variability of cost"),
                min=0, max=50, value=10)   
  ),

  mainPanel(

    plotOutput(outputId="tsplot")

  )
))

    # server.R
library(shiny)

shinyServer(function(input, output, session) {

  # initialize reactive values
  ts <- reactiveValues(cost=rep(NA,100), year=(2010:2109), counter=1)

  output$tsplot <- renderPlot({
    plot(ts$year, ts$cost, xlim=c(2010,2110), ylim=c(-200,200), xlab="Year",
         ylab="Cost (US Dollars)", type="l", main="Forecasted Cost Time series")
  })

  observe({

    isolate({


        if (ts$counter==1){
          ts$cost[ts$counter]=50 #initial cost
        }
        if (ts$counter > 1){
          ts$cost[ts$counter]=ts$cost[ts$counter-1]+rnorm(1,0,input$myvar)
        }
        ts$counter=ts$counter+1

    })

    if (((isolate(ts$counter) …
Run Code Online (Sandbox Code Playgroud)

animation r reset shiny

5
推荐指数
1
解决办法
1669
查看次数

标签 统计

animation ×1

r ×1

reset ×1

shiny ×1