[Rd] bug in plot.acf (PR#8705)

maechler at stat.math.ethz.ch maechler at stat.math.ethz.ch
Fri Mar 24 14:53:05 CET 2006


>>>>> "Duncan" == Duncan Murdoch <murdoch at stats.uwo.ca>
>>>>>     on Fri, 24 Mar 2006 13:55:03 +0100 (CET) writes:

    Duncan> (Moved from r-devel to r-bugs)
    Duncan> On 3/24/2006 5:03 AM, Antonio, Fabio Di Narzo wrote:
    >> Hi all.
    >> There's a bug in plot.acf, when plotting acf for multivariate time series.
    >> Here a reproducible example:
    >> 
    >> X <- rnorm(1000)
    >> Y <- -X + rnorm(1000, sd=0.6)
    >> Z <- cbind(X,Y)
    >> 
    >> In
    >> acf(Z)
    >> cross-correlation plot y-axis is limited to 0-1. But:
    >> acf(Z, ylim=c(-1,1))
    >> shows that there was a negative correlation, that was cut away in the
    >> previous plot.
    >> 
    >> I've seen the error is trivial. There's something like:
    >> 
    >> for(each pair of univariate time series) {
    >> if(is.null(ylim)) {
    >> ...#set ylim properly
    >> }
    >> ...
    >> }
    >> 
    >> in plot.acf code, so that in the first iteration the ylim par is properly
    >> set to about c(0,1), but in
    >> subsequent interations, ylim is no more NULL, and the old, unproper ylim
    >> specification
    >> remains.

    Duncan> Thanks for noticing this.  It's easy to fix, but
    Duncan> before I do, I'd like an opinion on the proper fix.
    Duncan> Should all the plots use the same ylim, or in the
    Duncan> case where it is unspecified, should they each
    Duncan> choose their own?  I can see arguments for both
    Duncan> possibilities.

    Duncan> Duncan Murdoch

I'd vote for the first one, a common y-scale.  
Only that is also consistent with the behavior of explicitly
speficied 'ylim'.

Martin

    >> 
    >> Antonio, Fabio Di Narzo.
    >> 
    >> P.S. Sorry for not indicating exact source lines, but from this PC I don't
    >> have access to
    >> R sources...



More information about the R-devel mailing list