Проблема: Создайте буферы вне полигонов, которые будут растворяться вместе с исходным полигоном

#r #buffer #spatial #analysis #shapefile

Вопрос:

Я хотел бы создать собственный полный буфер вне каждого полигона(шейп-файл), буферы не сливаются с другими буферами и полигонами. Однако после моего кода результат не такой. Так могу ли я его изменить?

 ####1.Create buffer####
create basic function#

Buffer_width <- function(x){
  width <- sqrt(x$A)
  buffer <- buffer(x, width = width, dissolve = F)
  return(erase(buffer,x))
}

library(pacman)
p_load('raster','maptools','rgdal','stringr','sf','rgeos')

#####2.create data####

df <- shapefile("polygons.shp")

####3.apply function, create only outside buffer####

a2 <- Buffer_width(df)

####4.highlight isobath with the buffer and add outline####

plot(a2, outline=FALSE, n = 10, col = 2, lwd=.4)
plot(a2, lwd = 0.7, fg = 2)
 

После кода я получил буфер, недовольный другим полигоном, близким к нему.
буфер должен быть красной линией, дополненной красной пунктирной линией,но это просто красная сплошная линия.

введите описание изображения здесь