IniziaInizia gratis

Aggiungere una palette di colori continua personalizzata ai grafici ggplot2

Il modo più flessibile per aggiungere una scala continua personalizzata ai grafici di ggplot2 è usare scale_color_gradientn() o scale_fill_gradientn(). Come scegliere quale usare? Abbina la funzione all'estetica che hai mappato. Per esempio, nel grafico del prezzo di casa previsto del Capitolo 1, avevi mappato fill al prezzo, quindi devi usare scale_fill_gradientn().

Queste due funzioni accettano l'argomento colors, a cui passi un vettore di colori che definisce la tua palette. Qui sta la versatilità. Puoi generare la palette come preferisci: automaticamente con strumenti come RColorBrewer o viridisLite, oppure manualmente specificando i colori per nome o con il codice esadecimale.

Le funzioni scale___gradientn() gestiscono come questi colori vengono mappati ai valori della tua variabile, anche se puoi intervenire tramite l'argomento values.

Giochiamo con alcune scale di colori alternative per la tua heatmap del prezzo di casa previsto dal Capitolo 1 (abbiamo rimosso lo sfondo della mappa per ridurre i tempi di calcolo, così puoi vedere i grafici più rapidamente).

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.

library(RColorBrewer)
# 9 steps on the RColorBrewer "BuPu" palette: blups


# Add scale_fill_gradientn() with the blups palette
ggplot(preds) +
  geom_tile(aes(lon, lat, fill = predicted_price), alpha = 0.8) 
Modifica ed esegui il codice