networkD3 simpleNetwork 无法在 Shiny 中正确重新渲染
networkD3 simpleNetwork not re-rendering properly in Shiny
我正在寻找基于单击 actionButton 来渲染和重新渲染一个 simpleNetwork 图。但是,出于某种原因,多次单击按钮并没有创建新的 simpleNetwork 实例,而是似乎使用了缓存版本。如何让 simpleNetwork 图在多次点击时完全重新呈现?
我在下面包含了一个示例以及问题的 gif:
.gif of issue
library(shiny)
library(networkD3)
server <- function(input, output, session) {
data <- eventReactive(input$click, {
src <- c("A", "A", "A", "A", "B", "B", "C", "C", "D")
target <- c("B", "C", "D", "J", "E", "F", "G", "H", "I")
networkData <- data.frame(src, target)
})
output$simple <- renderSimpleNetwork({
simpleNetwork(data())
})
}
ui <- fluidPage(titlePanel("networkD3 + Shiny"),
sidebarLayout(
sidebarPanel(actionButton("click", "Render")),
mainPanel(simpleNetworkOutput(
"simple", width = "100%", height = "700px"
))
))
shinyApp(ui = ui, server = server)
这已被报道 . It was fixed with PR #179 and released in version 0.4 on CRAN。确保您的 networkD3 包已更新。
我正在寻找基于单击 actionButton 来渲染和重新渲染一个 simpleNetwork 图。但是,出于某种原因,多次单击按钮并没有创建新的 simpleNetwork 实例,而是似乎使用了缓存版本。如何让 simpleNetwork 图在多次点击时完全重新呈现?
我在下面包含了一个示例以及问题的 gif:
.gif of issue
library(shiny)
library(networkD3)
server <- function(input, output, session) {
data <- eventReactive(input$click, {
src <- c("A", "A", "A", "A", "B", "B", "C", "C", "D")
target <- c("B", "C", "D", "J", "E", "F", "G", "H", "I")
networkData <- data.frame(src, target)
})
output$simple <- renderSimpleNetwork({
simpleNetwork(data())
})
}
ui <- fluidPage(titlePanel("networkD3 + Shiny"),
sidebarLayout(
sidebarPanel(actionButton("click", "Render")),
mainPanel(simpleNetworkOutput(
"simple", width = "100%", height = "700px"
))
))
shinyApp(ui = ui, server = server)
这已被报道