0
基本上我的問題是如何將PNG或mapview對象放入閃亮的應用程序中,以便在其上放置標記。將非地理mapview對象放入Shiny應用程序中
我喜歡PNG 15非地理布圖規劃的MapView對象上面用下面的代碼與另一SO用戶question here的協助下轉變成MapView類對象:
library(raster)
library(png)
library(mapview)
ohs<-data.frame(OHS_no=c(1001:1010), x=runif(10, 0, 1), y = runif(10, 0, 0.8), AGE = c(4, 15, 15, 43, 5, 50, 67, 77, 77, 28))
web_img <- "http://i.stack.imgur.com/8aSe9.png"
png <- readPNG(readBin(web_img, "raw", 1e6))
rst_blue <- raster(png[, , 1])
rst_green <- raster(png[, , 2])
rst_red <- raster(png[, , 3])
img <- brick(rst_red, rst_green, rst_blue)
m <- viewRGB(img)
abs(cbind(rnorm(40), rnorm(40)))
[email protected] %>% addMarkers(lng = ohs$x, lat = ohs$y)
我想創建一個Shiny應用程序將它放在一起,但我卡在renderLeaflet命令,我不知道如何將我的m @ map對象放在應用程序中。基本上以地圖對象作爲傳單的以下功能。
library(shiny)
library(leaflet)
ohs<-data.frame(OHS_no=c(1001:1010), x=runif(10, 0, 1), y = runif(10, 0, 0.8))
r_colors <- rgb(t(col2rgb(colors())/255))
names(r_colors) <- colors()
ui <- fluidPage(
leafletOutput("mymap"),
p(),
)
server <- function(input, output, session) {
output$mymap <- renderLeaflet({
leaflet() %>%
addProviderTiles("Stamen.TonerLite",
options = providerTileOptions(noWrap = TRUE)
) %>%
addMarkers(lng = ohs$x, lat = ohs$y)
})
}
shinyApp(ui, server)
它已經是一個傳單小部件對象。真棒。使用Markers和Shiny不帶地理空間信息的寶貴信息。 – monkeyshines
全部都在** mapview **文檔中描述。 – TimSalabim
http://environmentalinformatics-marburg.github.io/mapview/introduction.html – TimSalabim