我的数据涵盖了超过25年的时间。在数据集中超过6300天。我想在x-axix上展示这些年。
dates <- as.Date(DOL[,1], "%d.%m.%Y")
DOL <- as.xts(DOL[,2], dates)
plot(DOL, xaxt = "n", main="SMA", ann = FALSE)
axis(1, at=as.POSIXct(dates),labels=format(dates,"%Y"),tick=TRUE)
title(ylab = "Value")
title(xlab = "Time")
图表如下所示:
我希望每年在x轴上使用单行代替黑色大条。
答案 0 :(得分:2)
现在我明白了你的意思。
处理此问题的一种方法是创建两个时间序列,并使用一个用于计算和绘制数据,另一个用于抽象标记。像这样:
library(xts)
n <- 1000
d1 <- seq(as.Date("2001-01-01"),as.Date("2021-01-01"),length.out=n)
d1y <- seq(as.Date("2001-01-01"),as.Date("2021-01-01"),length.out=21)
d2 <- rnorm(n,10,1)
Dollar <- data.frame(d1,d2)
dates <- as.Date(Dollar[,1], "%d.%m.%Y",tz="GMT")
xtsplot <- as.xts(Dollar[,2], dates)
plot(xtsplot, xaxt = "n", main="SMA", ann = FALSE)
axis(1, at=as.POSIXct(d1y),labels=format(d1y,"%Y"))
title(ylab = "Value")
title(xlab = "Time")
还有其他方法......