Markera händelser i en tidsserie
Du har också lärt dig att det går att använda funktionen abline() för att lägga till raka linjer i ett befintligt diagram. Du kan rita en horisontell linje för att markera ett visst datum genom att sätta h till ett specifikt Y-värde, och en vertikal linje för att markera en viss nivå genom att sätta v till ett specifikt X-värde:
> abline(h = NULL, v = NULL, ...)
Kom ihåg att indexet i ett xts-objekt består av datumobjekt, vilket innebär att X-värdena i ett diagram också innehåller datum. I den här övningen använder du indexering samt as.Date("YYYY-MM-DD") och mean() för att visuellt jämföra genomsnittspriset för Citigroup-aktien med priset den 4 januari 2016 – efter att det påverkats av turbulensen på den kinesiska aktiemarknaden.
Du har tillgång till samma datamängd data som tidigare. Nu kör vi!
Obs! Den här koden kräver xts version 0.9-7 för att fungera. Du kan använda remotes::install_version() för att installera specifika versioner av paket.
Den här övningen är en del av kursen
Visualisering av tidsseriedata i R
Övningsinstruktioner
- Rita den tredje serien i
datamed titeln "Citigroup" - Skapa
vert_line, indexet för den datapunkt i "citigroup"-datan som infaller den 4 januari 2016 - Lägg till en röd vertikal linje vid detta datum med hjälp av
abline(),.index()ochvert_line - Skapa
hori_line, det objekt som är lika med genomsnittsvärdet för "citigroup"-priset - Lägg till en blå horisontell linje vid detta genomsnittsvärde med hjälp av
abline()ochhori_line
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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")