[Rd] bug in plot.ts?

Rui Barradas ruipbarradas at sapo.pt
Sat Dec 29 20:22:33 CET 2012


Just to add, on documentation, to my previous post. The following 
illustrates my point.

# This is the last instruction in the original post.
plot.ts(x=1, y=1, type="n", xy.labels=FALSE) # does not show the plot

plot.ts(x=1, y=1, xy.labels=FALSE) # does show the plot, does not label 
it, documented
plot.ts(x=1, y=1, type="n") # does show the plot (labels it), not 
properly documented
plot.ts(x=1:151, y=1:151, type="n") # does not show the plot, documented

Rui Barradas
Em 29-12-2012 19:07, Rui Barradas escreveu:
> Hello,
>
> You're right, it has to do with the argument xy.labels. The relevant
> lines in the source are
> (file src/library/stats/R/ts.R, function plot.ts)
>
>           [...]
>           n <- length(xy $ x)          #-> default for xy.l(ines|abels)
>           if(missing(xy.labels)) xy.labels <- (n <= 150)
>           if(!is.logical(xy.labels)) {
>               if(!is.character(xy.labels))
>                   stop("'xy.labels' must be logical or character")
>               do.lab <- TRUE
>           } else do.lab <- xy.labels
>           [...]
>           ptype <-
>           if(do.lab) "n" else if(missing(type)) "p" else type
>           plot.default(xy, type = ptype,
>           [...]
>           if(do.lab)
>               text(xy, labels =
>                if(is.character(xy.labels)) xy.labels
>                else if(all(tsp(x) == tsp(y))) formatC(time(x), width = 1)
>                else seq_along(xy$x),
>                col = col, cex = cex)
>           if(xy.lines)
>               lines(xy, col = col, lty = lty, lwd = lwd,
>                 type = if(do.lab) "c" else "l")
>           [...]
>
> Note that this is executed only if both 'x' and 'y' are passed to plot.ts.
> The variable 'do.lab' will control the plot.default type and whether the
> points are labeled using text() and the lines() type.
> This variable is set according to xy.labels. This behavior is more or
> less documented in plot.ts:
>
> |"xy.labels|||logical, indicating if |text
> <http://127.0.0.1:29428/library/stats/help/text>()| labels should be
> used for an x-y plot, /or/ character, supplying a vector of labels to be
> used. The default is to label for up to 150 points, and not for more."
>
> but I believe the documentation could be more clear. It could say that
> in the case of a y ~ x plot, to supress the plot xy.labels should be set
> to FALSE.
>
> Hope this helps,
>
> Rui Barradas
> Em 29-12-2012 17:04, Simone Giannerini escreveu:
>> Dear all,
>>
>> I think I have found a buglet in plot.ts
>>
>> plot.ts(x=1,type="n")     # correct: does not show the plot
>> plot.ts(x=1,y=1,type="n") # not correct: does show the plot
>>
>> I did not investigate the problem in depth but it could be related to
>> the switch xy.labels, in fact
>>
>> plot.ts(x=1,y=1,type="n",xy.labels=TRUE) #  does show the plot
>> plot.ts(x=1,y=1,type="n",xy.labels=FALSE) # does not show the plot
>>
>>> sessionInfo()
>> R version 2.15.2 Patched (2012-10-26 r61028)
>> Platform: x86_64-w64-mingw32/x64 (64-bit)
>>
>> locale:
>> [1] LC_COLLATE=Italian_Italy.1252  LC_CTYPE=Italian_Italy.1252
>> [3] LC_MONETARY=Italian_Italy.1252 LC_NUMERIC=C
>> [5] LC_TIME=Italian_Italy.1252
>>
>> attached base packages:
>> [1] stats     graphics  grDevices utils     datasets  methods   base
>>
>> loaded via a namespace (and not attached):
>> [1] tools_2.15.2
>>
>>
>> Kind regards
>>
>> Simone
>> ______________________________________________________
>>
>>
>> Simone Giannerini
>> Dipartimento di Scienze Statistiche "Paolo Fortunati"
>> Universita' di Bologna
>> Via delle belle arti 41 - 40126  Bologna,  ITALY
>> Tel: +39 051 2098262  Fax: +39 051 232153
>> http://www2.stat.unibo.it/giannerini/
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel



More information about the R-devel mailing list