仅在我点击Shiny中的操作按钮后才更新服务器上的内容

时间:2017-05-30 00:43:09

标签: r shiny plotly

我在R中的闪亮服务器中遇到了无功输出问题。

我想要做的是创建一个使用根据输入计算的值的绘图。

只有在我点击提交/完成按钮后才能更新输出,并且必须根据需要多次计算输出。

我设法做的是独立于提交按钮更新内容(提交按钮根本没有功能),并且在我更改1值后立即更改了绘图。

我想要的是在我指定所需的所有参数值后才更改绘图。

以下是我的ui.R代码的最小示例:

lat count = 2
lng count = 2

这是server.R代码:

    shinyUI(fluidPage(
      titlePanel("Wages in Year 2016 for Czech Republic in CZK"),
       sidebarPanel(

      conditionalPanel(condition = "input.conditionedPanels==7",
                 selectInput("Age", "Age", choices = vek_mod$Vek, selected = "23-27"),
                 selectInput("ChosenSex", "Your sex", choices = pohlavi_mod$Pohlavie, selected = "Zena"),
                 actionButton("Button", "Done"),
                 p("Click so changes will take effect.")
      ),
        mainPanel(
         tabsetPanel(
           ...
            tabPanel("Minimal_Example", textOutput("Minimal_Example"), value = 7)
            ...
            , id = "conditionedPanels"
    )
   )
  )
 )

我用observeEvent()和eventReactive()尝试了很多东西,但到目前为止没有任何东西对我有效。

如果您想了解代码的行为方式,请查看此处: http://52.59.160.3:3838/sample-apps/Mzdy_ShinyApp/

Tab被称为Minimal_Example

由于

1 个答案:

答案 0 :(得分:3)

submitButton就是这样做的。

如果您想使用actionButton,只需使用isolate以避免根据值更改进行刷新,并在代码中添加input$Button,如:

output$Minimal_Example <- renderPrint({
  input$Button
  Age <- isolate(input$Age)
  Sex <- isolate(input$ChosenSex)
  c(Age, Sex)
})