简体   繁体   English

绘制具有不同长度的不同系列

[英]Plotting different series with different lengths quantmod

I want to plot cumsum line for each year of a series, but the thing is each year have different observations.我想为一个系列的每一年的 plot cumsum 线,但事情是每年都有不同的观察结果。 I have tried using Chart_series but it doesn't work.我曾尝试使用 Chart_series 但它不起作用。

My goal is to plotting lines as years in terms of cumulative evolution.我的目标是根据累积演化将线绘制为年份。

In the example I put only two years.在这个例子中,我只放了两年。

library(PerformanceAnalytics)
library(quantmod)
library(tidyverse)
library(tidyquant)

library(xts)

a<-dailyReturn(TSLA,subset='2020') 
a2019<-dailyReturn(TSLA,subset='2019') 
b<-cumsum(a)*100
b2019<-cumsum(a2019)*100
plot(b2019)
lines(b) 

We could get a single dataset and then do a group by cumsum before plotting我们可以得到一个数据集,然后在绘图之前按cumsum进行分组

library(dplyr)
library(tibble)
library(lubridate)
library(PerformanceAnalytics)
library(quantmod)
library(ggplot2)

getSymbols('TSLA')
dailyReturn(TSLA, subset = c('2019', '2020')) %>%
    as.data.frame %>% 
    rownames_to_column('Date')  %>%
    mutate(Date = as.Date(Date)) %>% 
    group_by(Year = year(Date)) %>% 
    mutate(CumDaily.returns = cumsum(daily.returns) * 100) %>% 
    ggplot(aes(x = Date, y = CumDaily.returns, color = Year)) + 
         geom_line() +
         theme_bw()

-output -输出

在此处输入图像描述

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM