Evidenziare eventi in una serie temporale
Hai anche imparato che è possibile usare la funzione abline() per aggiungere linee rette a un grafico esistente. In particolare, puoi tracciare una linea orizzontale impostando h a un valore Y specifico e una linea verticale impostando v a un valore X specifico:
> abline(h = NULL, v = NULL, ...)
Ricorda che gli indici di un oggetto xts sono oggetti data, quindi i valori sull'asse X di un grafico conterranno anch'essi date. In questo esercizio userai l'indicizzazione, as.Date("YYYY-MM-DD") e mean() per confrontare visivamente la media dei prezzi azionari di Citigroup con il suo prezzo del 4 gennaio 2016, dopo essere stato influenzato dalla turbolenza del mercato azionario cinese.
Ti viene fornito lo stesso insieme di dati data di prima. Proviamo.
Nota: questo codice richiede la versione 0.9-7 di xts per funzionare. Puoi usare remotes::install_version() per installare versioni specifiche dei pacchetti.
Questo esercizio fa parte del corso
Visualizzare le serie temporali in R
Istruzioni dell'esercizio
- Traccia la terza serie in
datacon il titolo "Citigroup" - Crea
vert_line, l'indice del punto dati in "citigroup" che cade il 4 gennaio 2016 - Aggiungi una linea verticale rossa a questa data usando
abline(),.index()evert_line - Crea
hori_line, l'oggetto uguale al valore medio del prezzo di "citigroup" - Aggiungi una linea orizzontale blu a questo valore medio usando
abline()ehori_line
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Plot the "citigroup" time series
# Create vert_line to identify January 4th, 2016 in citigroup
vert_line <- which(index(___) == as.Date(___))
# Add a red vertical line using vert_line
abline(___ = .index(___)[___], col = "red")
# Create hori_line to identify average price of citigroup
hori_line <- ___(___)
# Add a blue horizontal line using hori_line
abline(___ = ___, col = "blue")