I wonder if you noticed that you had managed to create a "fig" object that has two "inside" lists by specifying first a key "list" which required a legend list, and then specifying a "legend" list that also had a key function? The solution to your specific request by Kortschak "nulled-out" the second of those.

--
David

On Oct 3, 2009, at 10:35 PM, David Winsemius wrote:


On Oct 3, 2009, at 7:05 PM, Sebastian P. Luque wrote:

Hi,

I thought the following would only remove the legend element of a
trellis object, but it actually removes both the legend and key
elements:

---<--------------------cut here--------------- start------------------->---
fig <- xyplot(Sepal.Length ~ Petal.Length, groups=Species, data=iris,
            key=list(x=1, y=0.02, corner=c(1, 0), size=3, between=1,
              text=list(levels(iris$Species))),
            legend=list(inside=list(fun="draw.key", x=0, y=1,
                          corner=c(0, 1),
args=list(key=list(text=list("a)", cex=1.5)),
                            draw=FALSE))))
update(fig, legend=NULL)
---<--------------------cut here--------------- end--------------------->---

Is this the right way to remove an element from the object, using
update.trellis()?  Thanks.

It probably depends on the element. In the case of "key", it is a descendant of the legend list so when you make legend NULL you are wiping out all of its descendants as well:
> str(fig)
List of 43
snipped a few lines
$ legend           :List of 2
 ..$ inside:List of 5
 .. ..$ fun   : chr "draw.key"
 .. ..$ args  :List of 2
 .. .. ..$ key :List of 6
 .. .. .. ..$ x      : num 1
 .. .. .. ..$ y      : num 0.02
 .. .. .. ..$ corner : num [1:2] 1 0
 .. .. .. ..$ size   : num 3
 .. .. .. ..$ between: num 1
 .. .. .. ..$ text   :List of 1
 .. .. .. .. ..$ : chr [1:3] "setosa" "versicolor" "virginica"
 .. .. ..$ draw: logi FALSE
 .. ..$ x     : num 1
 .. ..$ y     : num 0.02
 .. ..$ corner: num [1:2] 1 0
 ..$ inside:List of 5
 .. ..$ fun   : chr "draw.key"
 .. ..$ x     : num 0
 .. ..$ y     : num 1
 .. ..$ corner: num [1:2] 0 1
 .. ..$ args  :List of 2
 .. .. ..$ key :List of 1
 .. .. .. ..$ text:List of 2
 .. .. .. .. ..$    : chr "a)"
 .. .. .. .. ..$ cex: num 1.5
 .. .. ..$ draw: logi FALSE


Cheers,

--
Seb

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

David Winsemius, MD
Heritage Laboratories
West Hartford, CT

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to