Блестящая реактивность ggvis

Я пытаюсь создать график ggvis, который реагирует на выбор кнопки. Когда я запускаю его, первая выбранная кнопка покажет отличный график ggvis, но как только я изменю выделение, я увижу ОЧЕНЬ краткий проблеск нового графика, а затем он исчезнет. После этого я не вижу никаких сюжетов.

Мой код выглядит следующим образом:

UI:

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

                            # Layout
                            sidebarLayout(

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

                              mainPanel(htmlOutput("myplot"))
                            )
                   )
))

СЕРВЕР:

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")
  })

}

person maia    schedule 16.04.2015    source источник
comment
Можете ли вы предоставить некоторые воспроизводимые данные для воспроизведения ошибки?   -  person cdeterman    schedule 17.04.2015


Ответы (1)


Я понял:

Обновленный интерфейс:

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")

})
person maia    schedule 21.04.2015