R /传单 - 绘制多个多边形

时间:2016-11-02 09:49:29

标签: r leaflet projection

我试图用传单包绘制多个多边形,但我无法理解出了什么问题。

我使用的shapefile可以在这里找到:https://www.data.gouv.fr/en/datasets/fond-de-carte-des-codes-postaux/

library(leaflet)
library(rgdal)
df <- readOGR("C:/Users/me/codes_postaux","codes_postaux_region")
plot(df)

output shapefile

shapefile对我来说似乎没问题,我使用的代码相当简单。但是我只将地图作为输出而没有多边形。我已经在很长一段时间内一直在努力解决这个问题,如果有人能帮助我,我真的很感激。

map <- leaflet(df) %>%
  addProviderTiles("CartoDB.Positron")%>%
  fitBounds(10,38,10,55) %>% 
  addPolygons(fillOpacity = 0.8, color = "Blue", weight = 1)

map

leaflet

1 个答案:

答案 0 :(得分:4)

查看df@proj4stringplot(df); axis(1); axis(2)的输出。您的shapefile使用特定的CRS。您需要使用公共SpatialPolygonsDataFrame转换CRSobj(我从此处获得了CRS代码:Leaflet for R: Raster Images)。

library(sp)

pj <- CRS("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs")
df2 <- spTransform(df, pj)

map2 <- leaflet(df2) %>%
  addProviderTiles("CartoDB.Positron")%>%
  fitBounds(10,38,10,55) %>% 
  addPolygons(fillOpacity = 0.8, color = "Blue", weight = 1)
map2

enter image description here