1

我正在使用 R 和 EBImage 包编写一个用于图像分析的闪亮应用程序。闪亮的应用程序在本地成功运行。经过一些试验,我想通过shinyapps.io平台访问应用程序。

在shinyapps.io 中,应用程序正确呈现图像(静态)显示,但不是交互式图像。它保持空白。

¿ 一些想法?

谢谢

这是代码:

library("shiny")
library("EBImage")

ui <- fluidPage(

# Application title
titlePanel("Image display"),

# Sidebar with a select input for the image
sidebarLayout(
   sidebarPanel(
     fileInput("image", "Select image")
),

# Show a plot of the generated distribution
mainPanel(
  tabsetPanel(
    tabPanel("Static raster", plotOutput("raster")),
    tabPanel("Interactive browser", displayOutput("widget"))
  )
)
)

)

server <- function(input, output) {

img <- reactive({
f <- input$image
if (is.null(f))
  return(NULL)        
readImage(f$datapath)
})

output$widget <- renderDisplay({
req(img())
display(img())
})

output$raster <- renderPlot({
req(img())
plot(img(), all=FALSE)
})

}

# Run the application
shinyApp(ui = ui, server = server)
4

1 回答 1

1

我也偶然发现了这个问题。我认为这是因为显示功能旨在用于交互式会话。

修复只是将方法参数添加到显示调用中。所以你的代码应该是:

...

output$widget <- renderDisplay({
  req(img())
  display(img(), method = 'browser') # <- this should make the trick
})

...
于 2018-08-03T16:14:38.430 回答