闪亮的图像上传

时间:2017-12-06 20:47:35

标签: r shiny

不确定为什么这个简单的代码不起作用。目标是从设备上传图像并将其视为闪亮输出。我一直收到错误, *****错误:文件名参数无效*****

library(jpeg)
library(shiny)
library(magick)
library(magrittr)




  ui <- fluidPage(

#-------------------------------------Header Panel--------------------------------------------------#

titlePanel('Invoice Recognition & Interpretation -IRI'),

#--------------------------------Sidebar : Image Upload---------------------------------------------#
sidebarLayout(

  sidebarPanel(
    fileInput(inputId = "file1", 
              label = "Upload Invoice",
             accept = c('image/png', 'image/jpeg','image/jpg')
    ),

    tags$hr()

  ),


  mainPanel( 

  imageOutput(outputId = "Invoice")

    )
)
)


server <- function(input, output) {

re1<-reactive({ input$file1})

output$Invoice<-renderImage({re1()})

 }
shinyApp(ui, server)

1 个答案:

答案 0 :(得分:1)

您大部分时间都在那里,但是,您需要了解您的fileInput会返回数据框而不仅仅是路径。此外,renderImage<img>类似,您需要指定src

library(shiny)

ui <- fluidPage(

  titlePanel('Invoice Recognition & Interpretation -IRI'),

  sidebarLayout(
    sidebarPanel(
      fileInput(
        inputId = "file1",
        label = "Upload Invoice",
        accept = c('image/png', 'image/jpeg','image/jpg')
      ),
      tags$hr()
    ),
    mainPanel(
      textOutput("filename"),
      imageOutput(outputId = "Invoice")
    )
  )
)

server <- function(input, output) {

  re1 <- reactive({gsub("\\\\", "/", input$file1$datapath)})

  output$Invoice <- renderImage({list(src = re1())})

}

shinyApp(ui, server)