Aprovecha las fortalezas de ggplot2
Ya has visto que puedes añadir capas a un gráfico de ggmap() agregando capas geom_***() y especificando explícitamente los datos y los mapeos, pero este enfoque tiene dos grandes inconvenientes: las capas adicionales también deben especificar los datos y los mapeos, y el facetado no funcionará en absoluto.
Por suerte, ggmap() ofrece una forma de evitar estos inconvenientes: el argumento base_layer. Puedes pasar a base_layer una llamada normal a ggplot() que defina los datos y mapeos predeterminados para todas las capas.
Por ejemplo, el gráfico inicial:
ggmap(corvallis_map) +
geom_point(data = sales, aes(lon, lat))
podría haber sido en su lugar:
ggmap(corvallis_map,
base_layer = ggplot(sales, aes(lon, lat))) +
geom_point()
Al mover aes(x, y) y data de la función inicial geom_point() a la llamada a ggplot() dentro de ggmap(), puedes añadir facets o capas extra de la forma habitual de ggplot2.
Vamos a probarlo.
Este ejercicio forma parte del curso
Visualización de datos geoespaciales en R
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# Use base_layer argument to ggmap() to specify data and x, y mappings
ggmap(corvallis_map_bw, ___) +
geom_point(data = sales, aes(lon, lat, color = year_built))