我有一些时间序列数据需要绘制,我希望坐标轴的刻度更加细致。例如:
library(lubridate)
library(ggplot2)
library(scales)
dat <- data.frame(date = paste0("09-01-", gsub(" ", "0", format(1:30))),
stringsAsFactors = FALSE)
dat$date <- ymd(dat$date)
dat$y <- rnorm(nrow(dat))
p <- ggplot(dat, aes(x = date, y = y)) + geom_point()
根据这篇文章,我尝试了以下操作
p + scale_x_continuous(breaks=pretty_breaks(n=10))
但是 Error: Discrete value supplied to continuous scale
。有什么建议吗?
R Under development (unstable) (2014-12-29 r67265)
Platform: x86_64-apple-darwin10.8.0 (64-bit)
Running under: OS X 10.9.5 (Mavericks)
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] scales_0.2.4 ggplot2_1.0.0 lubridate_1.3.0
loaded via a namespace (and not attached):
[1] colorspace_1.2-4 digest_0.6.4 grid_3.2.0 gtable_0.1.2
[5] labeling_0.2 MASS_7.3-35 memoise_0.2.1 munsell_0.4.2
[9] plyr_1.8.1 proto_0.3-10 Rcpp_0.11.2 reshape2_1.4
[13] stringr_0.6.2 tools_3.2.0
date_format
、breaks = date_breaks(...)
和minor_breaks
(需要加载library(scales)
,请查阅?scale_x_date
)。 - Henrikpretty_breaks()
is nowbreaks_pretty()
- TTS