如何使用leaflet.esri包添加ArcGIS Server图层?

时间:2019-06-26 14:50:14

标签: r leaflet esri-leaflet esri-oss

我正在尝试使用leaflet.esri包将已发布的ArcGIS服务功能中的图层添加到R中的传单地图中。

我已经在https://rdrr.io/cran/leaflet.esri/man/addEsriTiledMapLayer.html和这里https://cran.r-project.org/web/packages/leaflet.esri/leaflet.esri.pdf阅读了文档,并测试了示例

我的代码如下:

library(leaflet)
library(leaflet.esri)

leaflet() %>% setView(lng = 55.0876632, lat = 25.0755935, zoom = 10) %>% 
  addEsriTiledMapLayer(
  url = "https://smart.gis.gov.ae/dmgis104/rest/services/Misc/Env_Imagery/MapServer")

更新:请注意,不需要用户名或密码。

我已经确认可以通过将URL添加为ArcCatalog中的ArcGIS Server来工作,但是当我尝试在R中运行以上内容时,我只会得到一个空白的传单地图。

如何指定上述网址中要加载的图层?该URL有很多可用的层,例如“ Misc / IMAGE2018”,我想将它们加载到传单中。

我也有些困惑,因为当我在ArcCatlog中检查URL时,它会将其缩短为“服务器URL:https://smart.gis.gov.ae/dmgis104/services”,而不是上面的内容,但是我不确定这是否重要。请参见下面的屏幕截图作为ArcCatlog的示例。

Screenshot of ArcCatlog connection

预先感谢

1 个答案:

答案 0 :(得分:0)

问题是您的地图服务没有使用典型的Web Mercer投影和切片方案。

您可以在此处找到一个示例,其中包含用于明确定义自定义投影的额外代码:http://esri.github.io/esri-leaflet/examples/non-mercator-projection.html