是否可以将来自 esri rest 服务器的地图作为简单要素对象导入 R?

Is it possible to import a map from an esri rest server into R as a simple features object?

Here is map 在一个相当标准的市政开放数据网站上。它由 ArcGIS 休息服务托管。我想将它导入 R,最好不要下载它。

显然,这行不通:

sf::st_read("https://data.milwaukee.gov/dataset/street-sweeping/resource/76f71567-f2ed-4737-95a2-414cb385d773")

是否有一些我缺少的直接方法可以做到这一点?当然,我试着用谷歌搜索它,但没有找到任何有用的东西。我可能只是缺少正确的术语。

显然 gdal 2.3 应该有一个可以直接读取它的 ESRIJSON 驱动程序,但我现在手头没有。相反,您可以在构建适当的查询字符串后使用 2.2 GeoJSON 驱动程序。在这种情况下:

 map = st_read('https://maps2.milwaukee.gov/arcgis/rest/services/DPW/DPW_sanitation/MapServer/19/query?returnGeometry=true&where=1=1&outFields=*&f=geojson')

URL 的基础在您引用的页面上给出 - 只需添加 return 几何参数,return 所有特征,所有字段,采用 geojson 格式.对于大量功能,服务器可能一次只会 return 页 20(或其他)页面,因此请记住这一点。还有其他参数可以让您通过多次调用加载 1-20,然后加载 21-30 等等。