我试图在leaflet
地图上显示几个zipcodes(因此多边形......)。数据以geojson
文件here提供。我选择了一些来自西雅图的邮政编码。
我尝试了以下(可重现的例子):
library(jsonlite)
library(leaflet)
url <- "https://raw.githubusercontent.com/openseattle/seattle-boundaries/master/data/zip-codes.geojson"
geojson <- fromJSON(url)
map <- leaflet() %>% addTiles() %>% addGeoJSON(geojson)
map
我无法弄清楚如何正确设置addGeoJSON
参数,而调用地图只会显示leaflet() %>% addTiles()
部分......
对于非我所在的非json高级用户来说,文档太轻了:
geojson:GeoJSON列表,或长度为1的字符向量
我该怎么办?非常感谢您对此问题的看法
此致
答案 0 :(得分:3)
您只需要将geojson解析为data.frame,fromJSON(url, FALSE)
library(jsonlite)
library(leaflet)
url <- "https://raw.githubusercontent.com/openseattle/seattle-boundaries/master/data/zip-codes.geojson"
geojson <- fromJSON(url, simplifyVector = FALSE)
leaflet() %>%
addTiles() %>%
addGeoJSON(geojson) %>%
setView(lng = -122.2, lat = 47.6, zoom = 10)
addGeoJSON()
也会接受一个字符串,例如
geojson_str <- paste0(readLines(url), collapse = "")
然后将其传递给addGeoJSON