From deepayan.sarkar at gmail.com  Wed Sep  6 02:25:41 2006
From: deepayan.sarkar at gmail.com (Deepayan Sarkar)
Date: Tue, 5 Sep 2006 17:25:41 -0700
Subject: [Rd] Two submitted packages
In-Reply-To: <20060905194018.BHI53591@po-d.temple.edu>
References: <20060905194018.BHI53591@po-d.temple.edu>
Message-ID: <eb555e660609051725s1d3ed863v535638187d1bce0f@mail.gmail.com>

On 9/5/06, Richard M. Heiberger <rmh at temple.edu> wrote:
> From: Prof Brian Ripley
> > There is no '2.4.1', and your R-devel is not very recent.
>
> Apologies on the typo and the two-week old 2.4.0dev.
>
> I just downloaded
>    version 2.4.0 Under development (unstable) (2006-09-04 r39086)
>
>
> 1.
> > You set cpv$clip <- "off" and the internal code assumes that it is logical
> > (as the message says).  I can't find any documentation to support your
> > code: if there is some please report it to the maintainer of grid (Paul
> > Murrell).
>
> The documentation for "off" comes from ?viewport that is part of 2.4.0dev.
> > installed.packages()["grid",]
>                            Package                            LibPath
>                             "grid" "C:/PROGRA~1/R/R-24~1.0DE/library"
>                            Version                           Priority
>                            "2.4.0"                             "base"
>                             Bundle                           Contains
>                                 NA                                 NA
>                            Depends                            Imports
>                        "grDevices"                                 NA
>                           Suggests                              Built
>                          "lattice"                            "2.4.0"
>
> clip
>     One of "on", "inherit", or "off", indicating whether to clip to the
>     extent of this viewport, inherit the clipping region from the parent
>     viewport, or turn clipping off altogether. For back-compatibility, a
>     logical value of TRUE corresponds to "on" and FALSE corresponds to
>     "inherit".
>
> The above description of clip is identical to the description in
> ?viewport in the released 2.3.1.

As far as I can tell, this description applies to the 'clip' argument
of the function 'viewport'. In your call

cpv$clip <- "off"

cpv is the return value of a viewport() call. The only description I
see of the return value is

Value:

     An R object of class 'viewport'.

No one is giving you any guarantees that this is a list or similar
object, let alone that it will further contain a component called
'clip' that you are allowed to modify. I don't see how the description
of a function argument you have quoted has any relevance to the use
which is giving you an error.

> I still get the same error in 2.4.0dev that did not appear in 2.3.1
> and it still looks to me like this is an equally valid statement in both
> versions of R.

Which is another way of saying that the statement is equally invalid
in both versions of R. Your use is in fact invalid, and the newer
version complains about it while the older did not.

> >  Error in grid.Call.graphics("L_setviewport", pvp, TRUE) :
> >          LOGICAL() can only be applied to a 'logical', not a 'character'
> >  >
>
> I think something needs to be changed to make the documentation and the
> program consistent.

If by that you mean you want R to throw an error everytime you do
something that is not documented, that's never going to happen.

> I like the documentation, with the three options
> for clipping, and hope to see the program changed to match it.

The program does exactly what the documentation says (or am I missing
something?). The three options for clipping _are_ available to you
when you create a viewport using the viewport() function.

Deepayan

[...]




[Rd] Two submitted packages
Deepayan Sarkar