Я нарисовал коробочную диаграмму, используя ggplot, дискретных дневных ценовых индексов промышленного индекса Доу-Джонса за период с 1 января 2000 года по 24 марта 2020 года.
На этой диаграмме я хотел бы выделить конкретные c наблюдений на графике следующим образом:
- Самое последнее наблюдение в наборе данных. Последнее наблюдение во временном ряду - это возврат цен 24 марта 2020 года, который составляет 11,4%. Я хотел бы выделить это наблюдение на диаграмме другим цветом
- Во-вторых, я хотел бы указать дату и закрасить конкретное наблюдение в эту дату другим цветом. Например, я хотел бы выбрать 16 марта 2020 года и выделить наблюдение с возвращением -12,9%.
Наконец, я хотел бы добавить легенду к диаграмме, которая показывает эти два наблюдения с метками « Current »и« 16-Mar-20 »
Любой совет о том, как получить этот вывод, был бы очень признателен, спасибо!
library(rtsdata)
library(dplyr)
library(ggplot2)
library(xts)
library(PerformanceAnalytics)
library(tbl2xts)
price_data = ds.getSymbol.yahoo("^DJI", from = "2000-01-01", to = Sys.Date())
price_data = data.frame(date=index(price_data), coredata(price_data))
price_data = as_tibble(price_data)
closing_price = price_data %>%
select(date, DJI.Close) %>%
rename(close = DJI.Close)
return_data = Return.calculate(tbl_xts(closing_price), method = c("discrete"))
return_data = data.frame(date=index(return_data), coredata(return_data))
return_data = as_tibble(return_data)
return_data = return_data %>%
rename(return_obs = close)
ggplot(data = return_data, aes(x = "", y = return_obs)) +
geom_boxplot() +
scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
ylab("Daily price return") +
xlab("Index") +
ggtitle("Boxplot of the Dow Jones Index \n (01 Jan 2000 to 24 March 2020)")