[Rd] "plot.ts" doesn't respect the value of "pch" (+ blocked from Bugzilla signups)

Martin Maechler maechler at stat.math.ethz.ch
Thu Aug 25 11:34:37 CEST 2016


>>>>> David Winsemius <dwinsemius at comcast.net>
>>>>>     on Thu, 25 Aug 2016 00:00:04 -0700 writes:

    >> On Aug 24, 2016, at 5:59 PM, Gregory Werbin <greg.werbin at libertymail.net> wrote:
    >> 
    >> I did a search on Bugzilla for "plot.ts" and didn't find anything on this issue. I tried to sign up for Bugzilla to report it, but my e-mail address didn't pass your "syntax checking" for a legal e-mail address.

If you read (and you should :-)
   https://www.r-project.org/bugs.html
you will see the reason for the "syntax checking".
We currently need manual white listing (of e-mail addresses),
because we had months of "spam" bug reports and then complete
spam explosion aka "bug site devastation" action.

I have added your e-mail (above) to be valid / legal...
Please "subscribe", because we will not keep that changed string for so long.

[ Actually, I'd tend to say that for short term, we are now
  looking for volunteers for "bugzilla moderation".... ]


    >> 
    >> The bug is easily reproducible on my machine as follows:
    >> 
    >> ## start
    >> 
    >> # generate some data
    >> y <- arima.sim(list(), 150)
    >> 
    >> # this will definitely dispatch to a ".ts" method
    >> class(y)[1] == 'ts'
    >> 
    >> # compare and note that `cex = 0.5` has no effect
    >> plot(y, type = 'b', pch = 16)
    >> plot(y, type = 'b', pch = 16, cex = 0.5)
    >> 
    >> # it works if `y` is coerced back to a regular vector
    >> plot(as.numeric(y), type = 'b', pch = 16, cex = 0.5)
    >> 
    >> # another way to see the issue
    >> plot.ts(y, type = 'b', pch = 16, cex = 0.5)
    >> plot.default(y, type = 'b', pch = 16, cex = 0.5)
    >> 
    >> ## end
    >> 
    >> Skimming through source code for `plot.ts`, it seems like the `cex` argument is being "eaten" by a `...` somewhere without being properly passed to `plot.default`.

    > '...' does not "eat" parameters, it passes them on.

    > Looking at the very top of the body we see this in the definition of the internal `plotts` function:

    > cex = par("cex"), lty = par("lty"), lwd = par("lwd"), 
    > axes = TRUE, frame.plot = axes, ann = par("ann"), cex.lab = par("cex.lab"), 
    > col.lab = par("col.lab"), font.lab = par("font.lab"), 
    > cex.axis = par("cex.axis"), col.axis = par("col.axis"), 

    > And at the end of the body we se the call to plotts (including the "dots")

    > So I would suggest using par-settings.

    > par(cex=0.5)
    > plot(y, type = 'b', pch = 16)

as a workaround, yes, thank you David!

    > (Question seems more appropriate for r-help.)

Still, I would tend to think that it was reasonable feature
request to ask for  plot.ts() to be improved there,  and then
R-devel or the R-bugzilla would be ok, too.

Martin Maechler, ETH Zurich


    > -- 
    > David.
    >> 
    >> The output of `R.version` is:
    >> platform       x86_64-apple-darwin15.5.0
    >> arch           x86_64
    >> os             darwin15.5.0
    >> system         x86_64, darwin15.5.0
    >> status
    >> major          3
    >> minor          3.1
    >> year           2016
    >> month          06
    >> day            21
    >> svn rev        70800
    >> language       R
    >> version.string R version 3.3.1 (2016-06-21)
    >> nickname       Bug in Your Hair
    >> 
    >> Greg
    >> 
    >> ______________________________________________
    >> R-devel at r-project.org mailing list
    >> https://stat.ethz.ch/mailman/listinfo/r-devel

    > David Winsemius
    > Alameda, CA, USA

    > ______________________________________________
    > R-devel at r-project.org mailing list
    > https://stat.ethz.ch/mailman/listinfo/r-devel



More information about the R-devel mailing list