Crear contenedores 2D en R

Tengo datos de coordenadas en R, y me gustaría determinar una distribución de dónde se encuentran mis puntos. Todo el espacio de puntos es un cuadrado de longitud lateral 100.

Me gustaría asignar puntos a diferentes segmentos en el cuadrado, por ejemplo redondeado al 5 más cercano. He visto ejemplos usandocut yfindinterval pero no estoy seguro de cómo usar esto al crear un contenedor 2d.

En realidad, lo que quiero poder hacer es suavizar la distribución para que no haya grandes saltos entre las regiones vecinas de la cuadrícula.

Por ejemplo (esto solo pretende ilustrar el problema):

set.seed(1)
x <- runif(2000, 0, 100)
y <- runif(2000, 0, 100)
plot(y~x)
points( x = 21, y = 70, col = 'red', cex = 2, bg = 'red')

el punto rojo está claramente en una región que por casualidad no ha tenido muchos otros puntos, por lo que la densidad aquí sería un salto de la densidad de las regiones vecinas, me gustaría poder suavizar esto

Respuestas a la pregunta(2)

Su respuesta a la pregunta