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