R:传单:使用带有 addRasterImage 的窗格

YGS*_*YGS 5 r leaflet

R的传单现在可以选择用于addMapPane按确定的顺序堆叠传单对象。这适用于矢量数据,但使用它会addRasterImage返回错误消息。options使用pane带有栅格的a 是否有特殊之处?

library(leaflet)
library(raster)

r <- raster(ncol=1000, nrow=1000)
r[] <- runif(ncell(r),0,1)
extent(r) <- matrix(c(172, -37, 175, -38), nrow=2)
crs(r)<-sp::CRS("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs")
pal <- colorNumeric(c("#0C2C84", "#41B6C4", "#FFFFCC"), values(r),
                    na.color = "transparent")


m <- leaflet(m) %>% addTiles() %>% 
  addMapPane("baseMap", zIndex = 410) %>% 
  addMapPane("baseSat", zIndex = 420) %>% 
  addMapPane("data", zIndex = 425) %>% 
  addMapPane("r", zIndex = 430) %>% 
  addProviderTiles(providers$Esri.WorldImagery, group = "Satellite imagery",
                   options = pathOptions(pane = "baseSat")) %>% 
  addProviderTiles(providers$Esri.WorldTerrain,
                   options = pathOptions(pane = "baseMap")) %>% 
  addMarkers(lng=174.768, lat=-36.852, popup="The birthplace of R", 
             options = pathOptions(pane = "data")) %>% 
  addRasterImage(r, colors = pal, opacity = 0.8, project = FALSE, 
                 options = pathOptions(pane = "r"))

Error in addRasterImage(., r, colors = pal, opacity = 0.8, project = FALSE,  : 
  unused argument (options = pathOptions(pane = "r"))
Run Code Online (Sandbox Code Playgroud)

Rex*_*ons 3

很晚才回答这个问题,但我遇到了同样的问题并找到了解决方案。

GitHub 上有一个尚未合并的传单拉取请求,它允许在addRasterImage(). 目前,您可以从此处安装此版本的传单。为了确保我稍后可以访问它或进行更改,我将整个存储库下载到一个新文件夹中,然后您可以在 RStudio 中打开它并运行:devtools::install()

编辑:现在获得快速安装的更快方法(无需下载软件包本身的本地副本)是运行:

remotes::install_github("rstudio/leaflet", ref="joe/feature/raster-options")

完成此操作后,您已有的代码应该可以正常工作。我一直在使用addRasterImage(..., options=leafletOptions(pane="r"))并且得到了想要的结果。