Criando compartimentos 2D em R

Eu tenho dados de coordenadas em R e gostaria de determinar uma distribuição de onde estão meus pontos. Todo o espaço dos pontos é um quadrado de comprimento lateral 100.

Eu gostaria de atribuir pontos a diferentes segmentos no quadrado, por exemplo, arredondados para o mais próximo 5. Vi exemplos usandocut efindinterval mas não sei como usar isso ao criar uma lixeira 2d.

Na verdade, o que eu quero fazer é suavizar a distribuição, para que não haja grandes saltos entre as regiões vizinhas da grade.

Por exemplo (isso serve apenas para ilustrar o 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')

o ponto vermelho está claramente em uma região que por acaso não teve muitos outros pontos, então a densidade aqui seria um salto em relação à densidade das regiões vizinhas, eu gostaria de poder suavizar isso

questionAnswers(2)

yourAnswerToTheQuestion