自动绘图调整刻度Y或X

时间:2018-07-12 15:24:58

标签: r

在该图中,是否可以调整Y比例(1000、10.000、100.000)?

x <- mdeaths+runif(n = length(mdeaths), min = 5000, max = 99523)*1000


#--- Only example
x1 <- auto.arima(x)

x2 <- forecast(x1, h = 12, level = 0.80)

autoplot(x2) # works

autoplot(x2/100000) # dont works

Error in x2/100000 : non-numeric argument to binary operator

编辑: Example

1 个答案:

答案 0 :(得分:0)

我仍然不确定您到底想要什么,但是由于autoplot()ggplot2包的功能,因此您可以应用ggplot2函数。

100000的“缩放”应该在auto.arima()之前进行。

x1 <- auto.arima(x / 100000)
x2 <- forecast(x1, h = 12, level = 0.80)

使用scales::comma,您可以禁用科学计数法,即“调整”的含义。并将中断设置为您可以使用breaks=10^(0:ceiling(log10(max(x))))

实现的对数序列

总而言之,您可以:

library(ggplot2)
library(scales)
autoplot(x2) + 
  scale_y_continuous(breaks = 10^(0:ceiling(log10(max(x)))), labels = comma)

屈服

enter image description here

或尝试使用autoplot(x2) + scale_y_log10(breaks = 10^(0:ceiling(log10(max(x)))), labels = comma)的对数刻度。