Re: [Rd] symbols function -- possible enhancements

From: Prof Brian Ripley <ripley_at_stats.ox.ac.uk>
Date: Wed 18 Jan 2006 - 15:05:25 GMT

On Wed, 18 Jan 2006, Martin Maechler wrote:

> Hi Jean,
>
> now that you've been told `the truth' .. :
>
> If you'd like to carefully look at symbols() and its help page and see
> which arguments ('axes' but maybe more) would be useful to pass
> to plot.default and if you provide enhanced versions of the two files
> https://svn.r-project.org/R/trunk/src/library/graphics/R/symbols.R
> and https://svn.r-project.org/R/trunk/src/library/graphics/man/symbols.Rd
>
> I'll gladly look at them and incorporate them for R 2.3.0
> (unless they break something)

I am not at all sure this is a good idea. We have a standard way (x/yaxt) to suppress axes. Let's not propagate the myth that axes=FALSE is standard, as then people will expect it in all plot() methods. (We have been here several times before when people have made that incorrect assumption.)

symbols() is just one of a range of high-level graphics functions such as (the default methods of) barplot, boxplot, contour, coplot, dotchart, image, hist, pairs, stars, sunflowerplot. A few do have an 'axes' argument and others accept one (and most were wrongly documented) and others do not. In general the S originals do not have an axes or ... argument, and R has added them rather inconsistently. My preference would be that ... is used only for graphics parameters, but clearly we cannot get from here to there.

>
> Best regards,
> Martin Maechler
>
>
>>>>>> "BDR" == Prof Brian Ripley <ripley@stats.ox.ac.uk>
>>>>>> on Tue, 17 Jan 2006 23:15:19 +0000 (GMT) writes:
>
> BDR> On Tue, 17 Jan 2006, Thomas Lumley wrote:
> >> On Tue, 17 Jan 2006, Jean Eid wrote:
> >>
> >>> Hi
> >>>
> >>> I do not get why the symbols function produces warnings when axes=F is
> >>> added. The following example illustrate this
> >>>
> >>>> symbols(0,10, inches=T, circles=1, axes=F, xlab="", ylab="")
> >>> Warning message:
> >>> parameter "axes" could not be set in high-level plot() function
> >>>
> >>>
> >>> I augmented symbols and added the axes=F argument to the plot function
> >>> inside the original symbols function. It works as expected, no warning
> >>> message. I am just lost as to why the extra arguments in symbols (...)
> >>> are not behaving as expected.
> >>>
> >>
> >> The ... argument is also passed to .Internal, and presumably the code
> >> there gives the warning.
>
> BDR> Indeed. axes=F is not in the allowed list
>
> BDR> ...: graphics parameters can also be passed to this function, as
> BDR> can the plot aspect ratio 'asp' (see 'plot.window').
>
> BDR> People confuse 'axes' with the graphics parameters, but it is in fact an
> BDR> argument to plot.default. (The corresponding graphics parameters
> BDR> xaxt and yaxt do work.) R-devel gives a more informative message:
>
> >> attach(trees)
> >> symbols(Height, Volume, circles = Girth/24, inches = FALSE, axes=F)
> BDR> Warning message:
> BDR> "axes" is not a graphical parameter in: symbols(x, y, type, data, inches,
> BDR> bg, fg, ...)
>
> BDR> We do ask people to read the help pages before posting for a good reason:
> BDR> the information is usually there in a more complete and accurate form than
> BDR> people remember.

-- 
Brian D. Ripley,                  ripley@stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Received on Thu Jan 19 03:06:25 2006

This archive was generated by hypermail 2.1.8 : Wed 18 Jan 2006 - 20:11:39 GMT