如何将 ts 对象中的 x 轴从 as.numeric 更改为 %Y-%m-%d 格式
How to change the x axis in a ts object to %Y-%m-%d format from as.numeric
我正在尝试实现基于时间序列对象的预测。但是,当我从代码中获取图表时,x 轴是日期的 as.numeric 版本:
这是所用数据子集的快照:
使用的代码:
ts<-ts(temp$total_cases, frequency = 1, start = min(as.Date(temp$date,"%Y-%m-%d")), end = max(as.Date(temp$date,"%Y-%m-%d")))
# time series labeled object for country's dates and
assign(paste0('ts_',country),ts)
fit <- ets(ts_Afghanistan)
plot(forecast(fit))
当我输入以下内容时,x 轴上输出类型的日期转换很清楚:
> as.Date(18300)
[1] "2020-02-08"
只是不确定如何将其反映在 x 轴标签中。我尝试玩 zoo 和其他功能但没有成功。非常感谢对此的帮助。
一种方法是覆盖 x 轴。在大多数基础 plot
方法中,xaxt="n"
会抑制默认轴。之后,你 axis
定义一个情节。 (axTicks
提供了一组很好的默认刻度位置。)
vec <- 18300 + 0:10
plot(vec, vec, xaxt = "n")
axTicks(1)
# [1] 18300 18302 18304 18306 18308 18310
axis(1, at = axTicks(1), labels = as.character(as.Date(axTicks(1))))
我正在尝试实现基于时间序列对象的预测。但是,当我从代码中获取图表时,x 轴是日期的 as.numeric 版本:
这是所用数据子集的快照:
使用的代码:
ts<-ts(temp$total_cases, frequency = 1, start = min(as.Date(temp$date,"%Y-%m-%d")), end = max(as.Date(temp$date,"%Y-%m-%d")))
# time series labeled object for country's dates and
assign(paste0('ts_',country),ts)
fit <- ets(ts_Afghanistan)
plot(forecast(fit))
当我输入以下内容时,x 轴上输出类型的日期转换很清楚:
> as.Date(18300)
[1] "2020-02-08"
只是不确定如何将其反映在 x 轴标签中。我尝试玩 zoo 和其他功能但没有成功。非常感谢对此的帮助。
一种方法是覆盖 x 轴。在大多数基础 plot
方法中,xaxt="n"
会抑制默认轴。之后,你 axis
定义一个情节。 (axTicks
提供了一组很好的默认刻度位置。)
vec <- 18300 + 0:10
plot(vec, vec, xaxt = "n")
axTicks(1)
# [1] 18300 18302 18304 18306 18308 18310
axis(1, at = axTicks(1), labels = as.character(as.Date(axTicks(1))))