У меня есть приложение Shiny dashboard, которое отображает изображение на основе фильтра, поэтому в зависимости от выбранного значения в фильтре изображение отображается внутри блока. Однако некоторые изображения слишком велики и отображаются за пределами рамки, то есть коробка не содержит всего изображения.
Если я пытаюсь отобразить одно и то же изображение с помощью img (src = "imagename", height = 200), изображение автоматически помещается в рамку. Как мне повторить то же самое, но с помощью функции imageOutput ()?
Вот фрагмент кода:
library("shiny")
library("shinydashboard")
sidebar <- dashboardSidebar()
body <- dashboardBody(
fluidRow(
box(imageOutput("image")) # IMAGE TOO BIG AND BOX CANNOT COMPLETELY CONTAIN IT
img(src="imagename", height = 200) # Image adjusted to box size
)
)
ui <- dashboardPage(dashboardHeader(title = "Example"),
sidebar,
body
)
server <- function(input, output) {
output$image <- renderImage({
filename <- normalizePath(file.path(paste('www/',imagename, '.png', sep='')))
list(src = filename)},
deleteFile = FALSE)
})
}
shinyApp(ui, server)