我正在尝试将脚本放在闪亮的服务器上。当我在 R 控制台中输入该脚本时,该脚本运行良好。这是一个使用shiny的R脚本。
library(shiny)
library(htmlwidgets)
library(raster)
library(leaflet)
library(sp)
library(RCurl)
# PATHS TO INPUT / OUTPUT FILES
projectPath = "/srv/shiny-server/sample-apps/hello"
imgPath = paste(projectPath,"/test.tif", sep = "")
# load raster image file
r <- raster(imgPath)
pal <- colorNumeric(c("#FF0000", "#666666", "#FFFFFF"), values(r),
na.color = "transparent")
r_colors <- rgb(t(col2rgb(colors()) / 255))
names(r_colors) <- colors()
ui <- fluidPage(
leafletOutput("mymap"),
p(),
actionButton("recalc", "New points")
)
server <- function(input, output, session) {
points <- eventReactive(input$recalc, {
cbind(rnorm(40) * 2 + 13, rnorm(40) + 48)
}, ignoreNULL = FALSE)
output$mymap <- renderLeaflet({
leaflet() %>%
addTiles() %>%
addRasterImage(r, colors=pal, opacity = 0.9, maxBytes = 123123123) %>%
addLegend(pal = pal, values = values(r), title = "Salut")
})
}
shinyApp(ui, server)
这是一个随机脚本,但我需要能够在传单地图上显示光栅文件,但我无法使其与闪亮服务器一起使用。 这是我得到的错误:
ERROR: Cannot create a RasterLayer object from this file.
在此行之前:
r <- raster(imgPath)
做
print(imgPath)
file.exists(imgPath)
检查一切是否正确。并检查是否可以找到 rgdal:
library(rgdal)