scale_x_datetime会产生错误吗?

jra*_*ara 3 r ggplot2

我正在尝试使用scale_x_datetime来优化我的x轴.我从ggplot2网站上阅读了该文档,但该网站中的示例生成的错误与我得到的相同:

> library(ggplot2)
> start <- ISOdate(2001, 1, 1, tz = "") 
> df <- data.frame( 
+    day30  = start + round(runif(100, max = 30 * 86400)), 
+    day7  = start + round(runif(100, max = 7 * 86400)), 
+    day   = start + round(runif(100, max = 86400)), 
+    hour10 = start + round(runif(100, max = 10 * 3600)), 
+    hour5 = start + round(runif(100, max = 5 * 3600)), 
+    hour  = start + round(runif(100, max = 3600)), 
+    min10 = start + round(runif(100, max = 10 * 60)), 
+    min5  = start + round(runif(100, max = 5 * 60)), 
+    min   = start + round(runif(100, max = 60)), 
+    sec10 = start + round(runif(100, max = 10)), 
+    y = runif(100) 
+ ) 
> 
> last_plot() + scale_x_datetime(major = "2 weeks", minor = "1 week") 
Error in continuous_scale(aesthetics, "datetime", identity, breaks = breaks,  : 
  unused argument(s) (major = "2 weeks", minor = "1 week")
>
Run Code Online (Sandbox Code Playgroud)

那么文档是否过时或者这里的问题是什么?

ROL*_*OLO 7

您使用的文档已过期,适用于v0.9.0之前的版本.在这里找到正确的一个.您的示例现在应该如下所示:

library(ggplot2)
library(scales) # for date_breaks()
start <- ISOdate(2001, 1, 1, tz = "") 
df <- data.frame( 
    day30  = start + round(runif(100, max = 30 * 86400)), 
    day7  = start + round(runif(100, max = 7 * 86400)), 
    day   = start + round(runif(100, max = 86400)), 
    hour10 = start + round(runif(100, max = 10 * 3600)), 
    hour5 = start + round(runif(100, max = 5 * 3600)), 
    hour  = start + round(runif(100, max = 3600)), 
    min10 = start + round(runif(100, max = 10 * 60)), 
    min5  = start + round(runif(100, max = 5 * 60)), 
    min   = start + round(runif(100, max = 60)), 
    sec10 = start + round(runif(100, max = 10)), 
    y = runif(100) ) 

qplot(sec10, y, data = df) 
last_plot() + scale_x_datetime(breaks = date_breaks("2 weeks"),
                               minor_breaks = date_breaks("1 week"))
Run Code Online (Sandbox Code Playgroud)