¿Cuál es la diferencia entre geoms y stats en ggplot2?

Tanto los geoms como las estadísticas se pueden usar para hacer gráficos en el paquete R ggplot2, y a menudo dan resultados similares (por ejemplo, geom_area y stat_bin). También a menudo tienen argumentos ligeramente diferentes, p. enGráficos de densidad 2D:

geom_density_2d(mapping = NULL, data = NULL, stat = "density2d",
  position = "identity", ..., lineend = "butt", linejoin = "round",
  linemitre = 1, na.rm = FALSE, show.legend = NA, inherit.aes = TRUE)

stat_density_2d(mapping = NULL, data = NULL, geom = "density_2d",
  position = "identity", ..., contour = TRUE, n = 100, h = NULL, na.rm =
  FALSE, show.legend = NA, inherit.aes = TRUE)

¿Hay alguna diferencia fundamental entre los dos tipos de objetos?