进度条未显示在networkD3和
我对Shiny和软件包进度条未显示在networkD3和,r,shiny,progress-bar,htmlwidgets,networkd3,R,Shiny,Progress Bar,Htmlwidgets,Networkd3,我对Shiny和软件包networkD3中的进度条有一些问题。进度条显示良好,无需尝试从该包呈现图表。如果尝试使用进度条和networkD3包,该进度条只显示一次,但不会在后续调用中显示。我用铬做了测试。下面是一个最低限度的示例代码: require(shinyjs) require(shiny) require(networkD3) require(jsonlite) ui <- function(){ fluidPage( fluidRow( column(w
networkD3
中的进度条有一些问题。进度条显示良好,无需尝试从该包呈现图表。如果尝试使用进度条和networkD3
包,该进度条只显示一次,但不会在后续调用中显示。我用铬做了测试。下面是一个最低限度的示例代码:
require(shinyjs)
require(shiny)
require(networkD3)
require(jsonlite)
ui <- function(){
fluidPage(
fluidRow(
column(width = 12, style = "margin: 0px; padding: 0px;",
box(title = "Flow Diagram", status = "primary", solidHeader = F, width = 7,
sankeyNetworkOutput("sankeyFlow", width = "100%", height = "500px")
)
),
sliderInput("numLanes", label = "Number of Top Lanes", min = 0, max = 30, value = 10)
)
)
}
server <- function(input, output, session) {
observeEvent(c(input$numLanes), {
withProgress(message = "Wait...", value = NULL, {
Sys.sleep(1.0)
})
})
output$sankeyFlow <- renderSankeyNetwork({
print("sankey")
withProgress(message = "Updating flow diagram...", value = NULL, {
# Load energy projection data
URL <- "https://cdn.rawgit.com/christophergandrud/networkD3/master/JSONdata/energy.json"
Energy <- jsonlite::fromJSON(URL)
nLanes <- input$numLanes
plot <- sankeyNetwork(Links = Energy$links, Nodes = Energy$nodes, Source = "source",
Target = "target", Value = "value", NodeID = "name",
units = "TWh", fontSize = 12, nodeWidth = 30)
return(plot)
})
})
}
shinyApp(ui = ui, server = server)
require(shinyjs)
需要(有光泽)
需要(网络3)
require(jsonlite)
ui我很确定这与networkD3
在sankeyNetwork()
中启用多行工具提示的方式存在冲突/缺陷
看。。。
更新(2019-05-20)
这个问题已经用shinny
的开发版本解决了,应该在shinny v1.3.3
后尽快在CRAN上发布shinny v1.3.3我很确定这与networkD3
在sankeyNetwork()
中启用多行工具提示的方式有冲突/缺陷
看。。。
更新(2019-05-20)
这个问题已经用shinny
的开发版本解决了,应该尽快在CRAN上发布shinny v1.3.3
只要观察一次,Sys.sleep()
和shinny不能很好地配合使用,请改用invalidaterater
。您的最小示例代码对我不起作用。我不得不把箱子搬走。除此之外,代码运行良好。更改输入时,进度条框处于打开状态,打印渲染时,进度条框处于顶部。但是,由于没有重置,它们只在第一次加载时出现。你到底想存档什么?@AlexanderLeow你说的重置到底是什么意思?每次更改输入滑块时都应显示进度条。如果您尝试注释输出$sankeyFlow,这就是我看到的行为,也是我想要的。如果图表是活动的,如果只显示一次。@Cbac,现在我明白你的意思了。在那里,我尝试了不同的事情,但无法解决您的问题。sankeyNetwork正在生成一个弃用警告(查看控制台),该警告似乎损坏了进度条。只有一个观察结果,Sys.sleep()
和Shining不能很好地配合使用,请改用invalidateLater
。您的最小示例代码对我不起作用。我不得不把箱子搬走。除此之外,代码运行良好。更改输入时,进度条框处于打开状态,打印渲染时,进度条框处于顶部。但是,由于没有重置,它们只在第一次加载时出现。你到底想存档什么?@AlexanderLeow你说的重置到底是什么意思?每次更改输入滑块时都应显示进度条。如果您尝试注释输出$sankeyFlow,这就是我看到的行为,也是我想要的。如果图表是活动的,如果只显示一次。@Cbac,现在我明白你的意思了。在那里,我尝试了不同的事情,但无法解决您的问题。sankeyNetwork正在生成一个弃用警告(查看控制台),该警告似乎损坏了进度条。