The ts method for plot() is quirky. You can use the default method: plot(as.vector(time(ttt)), as.vector(ttt), type = "p", col=ifelse(ttt<8, "black", "red"))
Bill Dunlap TIBCO Software wdunlap tibco.com On Tue, May 1, 2018 at 1:17 PM, Christopher W Ryan <cr...@binghamton.edu> wrote: > How would I color points conditional on their value in a plot of a time > series. Something like this: > > ## demonstration data > ttt <- ts(rpois(12, lambda = 8), start = c(2000, 1), freq = 4) > ttt > plot(ttt, type = "p") > > ## doesn't work--all points the same color > plot(ttt, type = "p", col = ifelse(ttt < 8, "black", "red")) > > ## also doesn't work--all points the same color > q <- as.numeric(ttt) > q > plot(ttt, type = "p", col = ifelse(q < 8, "black", "red")) > > > ## works OK with a simple, non-time-series scatterplot, as in > > sss <- data.frame(x = rpois(12, lambda = 8), y = rnorm(12, mean = 100, sd = > 25)) > with(sss, plot(y ~ x, col = ifelse(y > 100, "black", "red"))) > > ## but I am missing something about time series. > > Thanks. > > --Chris Ryan > Broome County Health Department > and Binghamton University > Binghamton, NY > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/ > posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.