У меня есть шейп-файл с регионами с полигонами, и я могу успешно использовать PlotOnStaticMap следующим образом:
#Map <- GetMap.bbox(bb$ #Just to show I read "Map" here
shp_0 <- rgdal::readOGR(dsn="dir", layer="TheLayer")
shp_1 <- shp_0@polygons[[i1]] # where i1=the region I'm looking at
shp_2 <- shp_1@Polygons[[i2]] # where i2=the polygon I want to plot
tbl_coords_i2 <- data.frame(shp_2@coords)
tbl_coords_i2$color <- colors()[33] # red
tmp <- PlotOnStaticMap(lat=tbl_coords_i2$X2, lon=tbl_coords_i2$X1, cex=0.5, pch=15, col=tbl_coords_i2$color, MyMap=Map, add=FALSE, NEWMAP=FALSE, FUN=points)
Но что я действительно хочу, так это построить участки, заполненные красным, как здесь:
tmp <- PlotPolysOnStaticMap(polys=shp_2, col=colors()[33], MyMap=Map, border = NULL, lwd=0.25, add=FALSE, NEWMAP=FALSE)
Но это дает ошибку "Ошибка в полисах [," Y "]: объект типа 'S4' не является поднабором" Как это сделать вместо этого?
- shp_0 - это "SpatialPolygonsDataframe"
- shp_1 - это "Полигоны"
- shp_2 - это "Полигон"
Извините, что не предоставил воспроизводимый код.
Большое спасибо.
/ Chris
Обновление: я только что понял, что "shp" в PlotPolysOnStaticMap (shp) должен быть кадром данных со столбцами "X" и "Y", т.е. не шейп-файл, как я предполагал ранее.
Обновление 2: хотя я использую "border = NA", я получаю красные полигоны с черными рамками. Кто-нибудь знает, как избавиться от границ?