【问题标题】:Refreshing or making renderUI reactive刷新或使 renderUI 反应式
【发布时间】:2015-05-08 21:30:08
【问题描述】:

我使用 observe 从模拟中创建 png 文件,然后使用 renderUI 作为滑块动画显示 png 文件。现在这是针对各种样本大小完成的,并且 png 文件名包括样本大小 - 例如RplotSS2step1.png ... RplotSS2step20.png 样本大小为 2。第一次选择样本大小时一切正常,但是当稍后重新选择相同的样本大小时,会创建新的 png 文件(不同的模拟)但旧的 png文件(不再存在于图像目录中)只是重新显示。

当重复使用相同的文件名时,有没有办法让 renderUI “重新映像”。如果我在文件名中添加一个随机标签以始终使它们唯一,我将不得不自动删除它们,这似乎有风险。

Nimgurl <- reactive({
  i=input$Nmyslider
  samplesize=input$num
  return(paste0("./images/RplotSS",samplesize,"step",i,".png"))
 })
output$Nui <- renderUI({
  tags$div(
     tags$img(src = Nimgurl())
   )
 })

【问题讨论】:

    标签: shiny


    【解决方案1】:

    我不知道这是否是最好的解决方案。我解决了renderImage 并使用了动态替代文本。

     output$image<-   renderImage({
    
                                # Return a list containing the filename
                                        list(src = Nimgurl(),
                                         contentType = 'image/png',
                                         alt = ndg())
                                      }, deleteFile = T)    
    

    ndg() 必须是响应式输入(如您所说,它可能是一个随机数)。

    然后在 ui.r 中你可以使用:

    div(imageOutput("roi"))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多