Shiny SelectInput为renderImage生成文件路径

时间:2017-02-08 18:58:29

标签: r shiny reactive

我有一系列" .jpg"我脚本的www文件夹中的文件。我想让renderImage使用名为" dateplatform.jpg"的文件名来渲染图像。基于我的UI的输入(日期,平台)。当我在server.r文件中尝试下面的脚本时,应用程序不显示任何图像。有什么想法吗?

ui(部分)

       fluidRow(
                column(width=12,
                imageOutput("platformimage")
                      )
               )

服务器(部分)

    filename <- reactive ({
    paste(input$date, input$platform, sep="")
    })

    output$platformimage <- reactive({
    renderImage({
    list(src = filename(),
         width = 600,
         height = 600)

            },deleteFile = FALSE)
    })

1 个答案:

答案 0 :(得分:1)

filename必须至少附加扩展名,normalizePath它可能更安全:

filename <- reactive({
    normalizePath(file.path(paste0(input$date, input$platform '.jpg')))
})

如果失败,可能是因为服务器无法找到该文件。检查filename()创建的路径,并修复file.path()

希望这有帮助。