On 1/21/2006 1:21 PM, Gavin Simpson wrote: > On Sat, 2006-01-21 at 13:12 -0500, Gabor Grothendieck wrote: >> This was discussed just recently. This is a design >> error but the maintainers claim there are no cases of >> interest where it matters. > > Thanks Gabor, > > I must have missed that discussion whilst I was on vacation. If what you > say was the outcome of that discussion, it still means that the > documentation for xy.coords is in error, as you may *not* provide a > single argument 'x'.
You need to read the whole page. You provide a single argument x by setting y to NULL, not by leaving it missing (as the docs said in earlier versions). If you want to submit a patch to the docs, I'll take a look, but I don't like the one below. It has basically the same flaw as the current docs: you're providing two objects, not a single object. Probably the clearest thing to do is just to say "see below" after the current wording, to point out that there are funny conventions here. > If the intention is to keep the current behaviour - which is fine - then > the documentation should be changed, perhaps along the lines of: > > x, y: the x and y coordinates of a set of points. Alternatively, a > single object 'x' can be provided if 'y = NULL' is also > supplied. > > 'object' might not be correct here - is a formula an 'object'? Sure, why not? Duncan Murdoch > > Cheers, > > Gav > >> On 1/21/06, Gavin Simpson <[EMAIL PROTECTED]> wrote: >>> Hi, >>> >>> I noticed the following problem with xy.coords() in R 2.2.1-patched >>> (version info at the foot of this email) and R 2.3.0 unstable >>> (subversion no: r37123): >>> >>>> xy.coords(x = matrix(1:20, ncol = 2)) >>> Error in xy.coords(x = matrix(1:20, ncol = 2)) : >>> argument "y" is missing, with no default >>>> xy.coords(x = matrix(1:20, ncol = 2), y = NULL) >>> $x >>> [1] 1 2 3 4 5 6 7 8 9 10 >>> >>> $y >>> [1] 11 12 13 14 15 16 17 18 19 20 >>> >>> $xlab >>> [1] "[,1]" >>> >>> $ylab >>> [1] "[,2]" >>> >>> And: >>> >>>> xy.coords(x = data.frame(x = 1:10, y = 1:10)) >>> Error in xy.coords(x = data.frame(x = 1:10, y = 1:10)) : >>> argument "y" is missing, with no default >>>> xy.coords(x = data.frame(x = 1:10, y = 1:10), y = NULL) >>> $x >>> [1] 1 2 3 4 5 6 7 8 9 10 >>> >>> $y >>> [1] 1 2 3 4 5 6 7 8 9 10 >>> >>> $xlab >>> [1] "x" >>> >>> $ylab >>> [1] "y" >>> >>> ... for example. >>> >>> ?xy.coords states: >>> >>> x, y: the x and y coordinates of a set of points. Alternatively, a >>> single argument 'x' can be provided. >>> >>> Given that, I would have thought the above examples would have worked >>> without explicitly passing y = NULL to xy.coords(). However, ?xy,coords >>> later states: >>> >>> If 'y' is 'NULL' and 'x' is a >>> >>> and the examples all illustrate the use of NULL passed as y. >>> >>> Is this a documentation error and a single argument x is not allowed, or >>> is this a bug in the code? Either way, ?xy.coords contradicts itself as >>> one would expect to be able to pass only x given the statement above. >>> >>> If this is a bug in the code, a potential workaround appears to be to >>> change the first line of xy.coords from: >>> >>> if (is.null(y)) { >>> >>> to >>> >>> if (missing(y) || is.null(y)) { >>> >>> but I haven't tested this on anything other than my two examples. >>> >>> I will file a bug report if my observation is correct - but given all >>> the erroneous bug reports lately, I thought I'd try my luck here where >>> an error on my part would not cause the maintainers of the bug tracker >>> any extra work. >>> >>>> version >>> _ >>> platform i686-pc-linux-gnu >>> arch i686 >>> os linux-gnu >>> system i686, linux-gnu >>> status Patched >>> major 2 >>> minor 2.1 >>> year 2006 >>> month 01 >>> day 18 >>> svn rev 37123 >>> language R >>>> sessionInfo() >>> R version 2.2.1, 2006-01-18, i686-pc-linux-gnu >>> >>> attached base packages: >>> [1] "methods" "stats" "graphics" "grDevices" >>> [5] "utils" "datasets" "base" >>> >>> All the best, >>> >>> Gav >>> >>> -- >>> %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~% >>> Gavin Simpson [T] +44 (0)20 7679 5522 >>> ENSIS Research Fellow [F] +44 (0)20 7679 7565 >>> ENSIS Ltd. & ECRC [E] gavin.simpsonATNOSPAMucl.ac.uk >>> UCL Department of Geography [W] http://www.ucl.ac.uk/~ucfagls/cv/ >>> 26 Bedford Way [W] http://www.ucl.ac.uk/~ucfagls/ >>> London. WC1H 0AP. >>> %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~% >>> >>> ______________________________________________ >>> R-devel@r-project.org mailing list >>> https://stat.ethz.ch/mailman/listinfo/r-devel >>> ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel