I am currently trying to create buffers of 5km around polygons of the region of interest. However, every time I increase the radius from 500 metres to 5000 metres, the shape of the buffer is not similar to the shape of the original polygons. How do I preserve the shape as I scale up the radius of the buffer?


trial <- st_read("C:\\Users\\vr235\\Downloads\\issuewithbufferusingsfpackage\\TownVillCity1.shp")
trial <- st_transform(trial, 32644)

Select 3 polygons from your shapefile to try

sel <- c(1,5,14)
geom <- st_geometry(trial[sel,])
buf <- st_buffer(geom, dist = 5000)
plot(buf, border = 'red')
plot(geom, add = TRUE)

enter image description here

EDIT The question has been modified based on one of the comments.

closed as unclear what you're asking by Spacedman, Vince, Fran Raga, whyzar, Andre Silva May 28 at 18:38

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 6
    What's wrong with that buffer? As a buffer radius increases you will lose the shape and detail of the buffered feature, and eventually the buffer will tend to a circle. Think about what a 500km buffer round a 1km square will look like. It won't look like a square. – Spacedman May 25 at 13:02
  • 4
    to see this, create several buffers, e.g. at 500m intervals, and you'll see the shape 'morph' and become more 'blobby'. if you want a larger scaled-up copy (which preserves shape) please amend the question, as you probably want a scale operation instead – Steven Kay May 25 at 21:37
  • Thank you @Spacedman for your comment. – Vijay Ramesh May 27 at 13:41
  • @StevenKay I have modified the question based on your suggestion. – Vijay Ramesh May 27 at 13:41
  • 1
    This edit makes it a question of what you want to do, and what you think "buffer" means, because you cant preserve the shape and do a buffer. A buffer in GIS is the polygon union of the set of all points within the buffer distance of the source polygon. If instead what you want to do is resize polygons, keeping the same shape then that's resizing. Edit the Q again and remove all mentions of "buffer" if that's what you really want to do. – Spacedman May 27 at 13:54

Browse other questions tagged or ask your own question.