gpt4 book ai didi

r - 更改 R 中时间序列图中的注释

转载 作者:行者123 更新时间:2023-12-01 16:40:46 30 4
gpt4 key购买 nike

虽然我可以使用通用绘图命令关闭轴来更改注释,注释并使用 axis 命令再次指定它们,例如

cars <- c(1, 3, 6, 4, 9)

plot(cars, type="o", col="blue", ylim=range(0, cars), axes=FALSE, ann=FALSE)
axis(1, at=1:5, lab=c("Mon","Tue","Wed","Thu","Fri"))

我无法使用时间序列对象来做到这一点,例如

www <- "http://www.massey.ac.nz/~pscowper/ts/Maine.dat"  
Maine.month <- read.table(www, header = TRUE)
attach(Maine.month)
Maine.month.ts <- ts(unemploy, start = c(1996, 1), freq = 12)
Maine.98 <- window(Maine.month.ts, start = c(1998,1), end = c(1998,11))

如何绘制带有注释的 Maine.98 ,如下所示:

"Jan-98"   "Feb-98"   "Mar-98"   "Apr-98"   "May-98"  etc?

最佳答案

您发现时间序列的 ts 类型适合 ARIMA 建模和具有固定“delta t”的序列,例如每月或每季度序列。

但是 R 总体上擅长处理日期。尝试将数据保存在 data.frame 中,但将 x 轴数据转换为 DatePOSIXt 类型。 plot() 将调用一个了解时间的轴格式化函数,并且您可以获得更好的默认值,但您仍然可以覆盖这些默认值。

更好的是使用包 zooxts这为您提供了额外的控制以及附加功能:

 > X <- data.frame(x=seq(Sys.Date()-11*31,Sys.Date(),by="1 months"),  
y=cumsum(rnorm(12)))
> plot(X) # plot as a data.frame with Date column
> library(zoo)
> plot(zoo(X[,-1], X[,1])) # plot as a zoo object
> library(xts)
> plot(xts(X[,-1], X[,1])) # plot as an xts object

编辑:我忘记了,如果您的数据已经是 ts 对象,那么您将拥有更简单的转换器as.zoo()as.xts()plot.zoo 帮助页面提供了自定义时间轴格式的示例。

关于r - 更改 R 中时间序列图中的注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1399217/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com