ggmap(mapgilbert) +
stat_density2d(data = df, aes(x = lon, y = lat, fill = ..level..,
alpha = ..level..), size = 0.01,
bins = 16, geom = "polygon") +
scale_fill_gradient(low = "green", high = "red") +
scale_alpha(range = c(0, 0.3), guide = FALSE)
Myślę, że 4 miliony punktów są zbyt kosztowne obliczeniowo. Może powinieneś użyć podzbioru lub próbki ze swoich danych.