Estrazione per il plotting
Estrarre i componenti da un datetime è particolarmente utile quando esplori i dati. All’inizio del capitolo hai importato i dati giornalieri del meteo di Auckland e creato un grafico a serie temporale di dieci anni della temperatura massima giornaliera. Quel grafico fornisce una buona panoramica dell’intero decennio, ma è difficile cogliere l’andamento annuale.
In questo esercizio userai i componenti delle date per esplorare l’andamento della temperatura massima nell’arco dell’anno. Il primo passo è creare alcune nuove colonne per contenere le parti estratte, poi le userai in un paio di grafici.
Questo esercizio fa parte del corso
Lavorare con date e orari in R
Istruzioni dell'esercizio
- Usa
mutate()per creare tre nuove colonne:year,ydayemonthche contengano rispettivamente gli stessi componenti della colonnadate. Non dimenticare di etichettare i mesi con i loro nomi. - Crea un grafico con
ydaysull’asse x,max_tempsull’asse y, in cui le linee siano raggruppate peryear. In questo grafico ogni anno è una linea, con l’asse x che va dal 1° gennaio al 31 dicembre. - Per un punto di vista alternativo, crea un ridgeline plot (in precedenza noto come joyplot) con
max_tempsull’asse x,monthsull’asse y, usandogeom_density_ridges()dal pacchettoggridges.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
library(ggplot2)
library(dplyr)
library(ggridges)
# Add columns for year, yday and month
akl_daily <- akl_daily %>%
mutate(
___ = ___(date),
___ = ___(date),
___ = ___(date, ___))
# Plot max_temp by yday for all years
ggplot(akl_daily, aes(x = ___, y = ___)) +
geom_line(aes(group = ___), alpha = 0.5)
# Examine distribution of max_temp by month
ggplot(akl_daily, aes(x = ___, y = ___, height = ..density..)) +
geom_density_ridges(stat = "density")