IniziaInizia gratis

Sfruttare i punti di forza di ggplot2

Hai visto che puoi aggiungere layer a un grafico ggmap() aggiungendo layer geom_***() e specificando esplicitamente dati e mappature, ma questo approccio ha due grossi svantaggi: anche i layer successivi devono specificare dati e mappature, e il faceting non funziona proprio.

Per fortuna ggmap() offre un modo per aggirare questi limiti: l’argomento base_layer. Puoi passare a base_layer una normale chiamata a ggplot() che definisce i dati e le mappature predefinite per tutti i layer.

Per esempio, il grafico iniziale:

ggmap(corvallis_map) +
  geom_point(data = sales, aes(lon, lat))

avrebbe potuto essere invece:

ggmap(corvallis_map, 
    base_layer = ggplot(sales, aes(lon, lat))) +
  geom_point()

Spostando aes(x, y) e data dalla funzione iniziale geom_point() alla chiamata ggplot() all’interno della chiamata a ggmap(), puoi aggiungere facet o layer extra nel modo usuale di ggplot2.

Proviamo.

Questo esercizio fa parte del corso

Visualizzare dati geospaziali in R

Visualizza il corso

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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))
Modifica ed esegui il codice