leaflet () рисует шейп-файл в виде гигантского прямоугольника - PullRequest
0 голосов
/ 07 декабря 2018

У меня проблема с leaflet, когда вместо фигур рисуется гигантский прямоугольник.Я уверен, что есть проблема с форматом шейп-файла, но я не могу определить, что происходит не так.Печать файла работает нормально.

файл: https://upload.cat/8c8ade09a3489b47

оригинальный источник файла: http://sites.psu.edu/psucz/data/ (внизу страницы)

require(tidyverse)
require(leaflet)
require(rgdal)


ers_shp <- readOGR("ERS10.shp")

#Doesn't work, produces rectangle:
leaflet() %>% addProviderTiles("CartoDB.Positron") %>% addPolygons(data = ers_shp)

#Works, indicating the data is there.
plot(ers_shp, col="#f2f2f2", fill=TRUE, bg="skyblue", lwd=0.25, mar=rep(0,4), border=0 )

1 Ответ

0 голосов
/ 07 декабря 2018

Это потому, что вам нужно преобразовать полигоны в широты / долготы, прежде чем передавать их в листовки:

library(sf)
inv <- sf::st_read("ERS10.rep.shp") %>% 
  sf::st_transform(4326)
leaflet() %>% addProviderTiles("CartoDB.Positron") %>% addPolygons(data = inv)

ИЛИ

library(sp)
inv <- rgdal::readOGR("ERS10.rep.shp") %>%  
  spTransform(CRS("+proj=longlat +datum=WGS84"))
leaflet() %>% addProviderTiles("CartoDB.Positron") %>% addPolygons(data = inv)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...