D3partitionROutput не реагирует на изменение вывода

D3partitionR имеет несколько фантастических визуализаций для иерархических и последовательных данных, однако у него есть серьезный недостаток в Shiny.

Функция D3partitionROutput (& renderD3partitionR) не обновляет отображаемый объект при обновлении выходного объекта.

Функции отлично работают при первом выполнении графика, однако отображаемые объекты не могут быть реактивно обновлены.

Кто-нибудь знает об исправлении или обходном пути, поскольку мне очень нравятся визуализации этого пакета?

library(shiny)
library(D3partitionR)

path_in=list(list("A","B","C","D"),list("A","B","F","G"),list("A","D"),list("A","B","END"))
value_in=c(15,29,21,34)

# Define UI for application that draws a histogram
ui <- fluidPage(

   # Application title
   titlePanel("Old Faithful Geyser Data"),

   # Sidebar with a slider input for number of bins 
   sidebarLayout(
      sidebarPanel(
         selectInput("type_in",
                     "Plot type:",
                     choices = c('circleTreeMap', 'partitionChart', 'treeMap')
         )
      ),

      # Show a plot of the generated distribution
      mainPanel(
        D3partitionROutput("part_out")
      )
   )
)

# Define server logic required to draw a histogram
server <- function(input, output) {

   output$part_out <- renderD3partitionR({
     type = input$type_in
     D3partitionR(data=list(path=path_in,value=value_in)
                  , type = type)
   })
}

# Run the application 
shinyApp(ui = ui, server = server)

Обновление: я обнаружил аналогичную ошибку здесь в Rwordcloud, которая была решить путем изменения функции «рендеринга» в Rwordcloud.js. Я просмотрел renderValue в D3partitionR.js и функция не принимает ввод «экземпляр» (как это делается в Rwordcloud.js), поэтому кажется, что она не знает, когда удалять/обновлять renderValue. Я парень R (и у меня нет опыта работы с js), поэтому я не знаю, как следует изменить функцию renderValue в D3partitionR.js, однако я почти уверен, что это источник проблемы. Помогите!


person user3555243    schedule 04.08.2017    source источник
comment
Вы должны открыть вопрос здесь: github.com/AntoineGuillot2/D3partitionR   -  person Victorp    schedule 05.08.2017
comment
К вашему сведению, я связался с Антуаном, владельцем пакета, который согласился, что это ошибка, и исправит ее в следующем выпуске пакета.   -  person user3555243    schedule 14.08.2017