Shiny 光泽ggvis反应性

Shiny 光泽ggvis反应性,shiny,interactive,ggvis,Shiny,Interactive,Ggvis,我正在尝试创建一个ggvis绘图,以响应按钮选择。当我运行它时,选择的第一个按钮将显示一个伟大的ggvis绘图,但一旦我更改了选择,我可以看到一个新绘图的非常简短的一瞥,然后它就消失了。之后,我看不到任何情节 我的代码如下: 用户界面: 服务器: shinyServer(function(input, output) { dataInput <- reactive({ data[[input$marker]] }) observe({ if (!is.n

我正在尝试创建一个ggvis绘图,以响应按钮选择。当我运行它时,选择的第一个按钮将显示一个伟大的ggvis绘图,但一旦我更改了选择,我可以看到一个新绘图的非常简短的一瞥,然后它就消失了。之后,我看不到任何情节

我的代码如下:

用户界面:

服务器:

shinyServer(function(input, output) {  

  dataInput <- reactive({
    data[[input$marker]]
  })

  observe({
    if (!is.null(input$marker)) {
      dl <- dataInput()
      dl %>%
        ggvis(x = ~as.numeric(time_elapsed), y = ~as.numeric(phenotype_value)) %>%
        bind_shiny("allsparklines")
    }
  })

  output$myplot <- renderUI({
    if(is.null(input$marker)) {
      return(NULL)
    }
    ggvisOutput("allsparklines")
  })

}
我想出来了:

更新的用户界面:

shinyUI(navbarPage("Perspective:",
                   tabPanel("Overview",

                            # Layout
                            sidebarLayout(

                              sidebarPanel(radioButtons("marker", "Phenotypic Marker:", phenotypic_marker_names)),

                              mainPanel(ggvisOutput("allsparklines"))
                            )
                   )
))
已更新的服务器:

shinyServer(function(input, output, session) {

  selected <- reactive({
    if (!is.null(input$marker)) {
      data_temp[[input$marker]]
    }
  })


  selected %>% 
    ggvis(x = ~as.numeric(time_elapsed), y = ~as.numeric(phenotype_value)) %>%
    layer_points() %>%
    bind_shiny("allsparklines")

})

你能提供一些可复制的数据来复制错误吗?
shinyServer(function(input, output, session) {

  selected <- reactive({
    if (!is.null(input$marker)) {
      data_temp[[input$marker]]
    }
  })


  selected %>% 
    ggvis(x = ~as.numeric(time_elapsed), y = ~as.numeric(phenotype_value)) %>%
    layer_points() %>%
    bind_shiny("allsparklines")

})