我已经合并了两个 xts 对象,并希望将它们绘制在一个显示中。当我使用点(type =“p”)时,这很好用。但是,当我使用 lines (type="l") 时,会出现问题:第一个系列仅显示在第二个系列未覆盖的索引区域中。我希望线条与“点”一样长。下面发布了一个可重现的示例。
由于默认和 ggplot 绘图命令都会发生这种情况,我怀疑这与时间序列数据的某些属性有关。
这种行为的原因是什么?有没有绘制这种数据的正确方法?
## Minimal example for Reproduction
library(xts)
library(ggplot)
# create two artificial xts objects
xts1 <- xts(1:15,Sys.Date()+10+seq(from=1,by=5,length.out=15))
xts2 <- xts(1:20,Sys.Date()+seq(from=1,by=2,length.out=20))
# merge them
merged.xts <- merge.xts(xts1,xts2)
# Plot as zoo objects to allow for panels
# plotting with points shows both series
plot(as.zoo(merged.xts),type="p",plot.type="single")
# plotting with lines
# The second series is "shortened"
plot(as.zoo(merged.xts),type="l",plot.type="single")
# Similar behaviour with ggplot2
autoplot(merged.xts)