Выберите многоугольники, пересекающие (или полностью внутри) другого многоугольника [R sf] - PullRequest
1 голос
/ 26 мая 2020

Я хотел бы выбрать полигоны из одной простой коллекции пространственных объектов, которые пересекают полигон в другой коллекции SF. Вот воспроизводимый пример:

library(sf)
nc <- st_read(system.file("shape/nc.shp", package="sf"))
nc <- st_transform(nc,32717);nc
poly <- nc[1,]
fishnet<-st_make_grid(st_as_sfc(st_bbox(poly)),cellsize=5000)

Теперь, создав поли и вокруг него fis hnet, я хотел бы выделить те ячейки fis hnet, которые пересекают poly или которые полностью содержатся в poly. .

Спасибо за любую помощь!

Отметьте

1 Ответ

1 голос
/ 26 мая 2020
fishnet2 <- fishnet[poly,]

А сюжет

library(ggplot2)

ggplot() + 
  geom_sf(data = poly, fill = "blue") +
  geom_sf(data = fishnet2, color = "red", fill = NA)

enter image description here

...