mapview不显示来自osmdata的查询的多面体

问题描述

我正在使用osmdata软件包带动波哥大的大学,其中一些被映射为multipolygons。但是情节是空的。知道如何解决吗?

library(osmdata)
library(mapview)
query <- opq(bBox = "Bogota") %>% add_osm_feature(key = "amenity",value = "university") %>% osmdata_sf()
mapview(query$osm_multipolygons[,c("osm_id","name","amenity")],map.types = "OpenStreetMap")
#mapview(query$osm_polygons[,map.types = "OpenStreetMap")

注意:在绘制点或多边形时,它可以正常工作。

解决方法

解决方案是对对象的坐标系进行转换。如下所示:

library(osmdata)
library(mapview)
library(sf)
query <- opq(bbox = "Bogota") %>% 
  add_osm_feature(key = "amenity",value = "university") %>%
  osmdata_sf()

query <- query$osm_multipolygons[,c("osm_id","name","amenity")] %>%
  st_transform(st_crs("+proj=utm +ellps=GRS80 +datum=WGS84")) %>% 
  st_make_valid() 

mapview(query,map.types = "OpenStreetMap")

enter image description here

有关更多信息,请检查以下链接。 Coordinate Systems in R

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...