Hi,
I want my xyplot legend to be flat, not tall, and there seems to be no way
for xyplot's auto.key and key elements to do this: I tried many, many
permutations of what I could find in the archives and reading the
documentation. If there there's a way to make it flat, please tell me what
the magic incantation is.
Here's a simple example of what I like to see. The xyplot will be a
multi-panelled one with a single,
flat legend below. It seems the xyplot's legend element is the way to go --
the option I haven't tried because I don't know what or how to create a grob
of this kind. Where to start?
xyplot(1~1)
legend(0.15,-0.125,
bty='n',pch=rep(c(15,17),2),col=c('brown','green','blue','red'),ncol=4,
legend=c('How','to make','this into', 'a grob?'))
Thanks!
--
View this message in context: http://r.789695.n4.nabble.com/Creating-a-flat-legend-grob-for-lattice-xyplot-tp3699235p3699235.html
Sent from the R help mailing list archive at Nabble.com.
Creating a flat legend 'grob' for lattice xyplot
4 messages · Gesmann, Markus, David Winsemius, Mark
Hi Mark,
I believe the argument you are looking for is column not ncol.
Try the following:
library(lattice)
xyplot(1~1,
auto.key=list(
bty='n',
pch=rep(c(15,17),2),
col=c('brown','green','blue','red'),
columns=4,
text=c('How','to make','this into', 'a grob?'),
space="top"
))
Regards
Markus
-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Mark
Sent: 27 July 2011 18:32
To: r-help at r-project.org
Subject: [R] Creating a flat legend 'grob' for lattice xyplot
Hi,
I want my xyplot legend to be flat, not tall, and there seems to be no way for xyplot's auto.key and key elements to do this: I tried many, many permutations of what I could find in the archives and reading the documentation. If there there's a way to make it flat, please tell me what the magic incantation is.
Here's a simple example of what I like to see. The xyplot will be a multi-panelled one with a single, flat legend below. It seems the xyplot's legend element is the way to go -- the option I haven't tried because I don't know what or how to create a grob of this kind. Where to start?
xyplot(1~1)
legend(0.15,-0.125,
bty='n',pch=rep(c(15,17),2),col=c('brown','green','blue','red'),ncol=4,
legend=c('How','to make','this into', 'a grob?'))
Thanks!
--
View this message in context: http://r.789695.n4.nabble.com/Creating-a-flat-legend-grob-for-lattice-xyplot-tp3699235p3699235.html
Sent from the R help mailing list archive at Nabble.com.
______________________________________________
R-help at 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.
**********************************************************************
The information in this E-Mail and in any attachments is...{{dropped:27}}
On Jul 27, 2011, at 1:31 PM, Mark wrote:
Hi,
I want my xyplot legend to be flat, not tall, and there seems to be
no way
for xyplot's auto.key and key elements to do this: I tried many, many
permutations of what I could find in the archives and reading the
documentation. If there there's a way to make it flat, please tell
me what
the magic incantation is.
Here's a simple example of what I like to see. The xyplot will be a
multi-panelled one with a single,
flat legend below. It seems the xyplot's legend element is the way
to go --
the option I haven't tried because I don't know what or how to
create a grob
of this kind. Where to start?
xyplot(1~1) # a lattice function
legend(0.15,-0.125, # a base graphics function
bty='n',pch=rep(c(15,17),
2),col=c('brown','green','blue','red'),ncol=4,
legend=c('How','to make','this into', 'a grob?'))
It is possible to define a legend object inside xyplot but using the base graphics legend() is NOT how it is done. You should provide a sample data.frame and someone will show you how to do it. The example in Sarkar's Lattice book that does it uses barchart and specifies auto.key with a columns= argument. It's fig 10.2 and you can find the examples on the website. It's also described in the key section of ? xyplot .... I just looked.
David Winsemius, MD West Hartford, CT
Hi Marcus,
That's almost it! So ncol and column do the same thing in different
functions... gah!
Because my real use of xyplot I override the default plotting colors and
character, autokey doesn't 'know' this, so they don't match.
So the addition of the par.settings element is needed (from another e-mail):
xyplot(1~1,
auto.key=list(
bty='n',
columns=4,
text=c('How','to make','this into', 'a grob?'),
space="top")
par.settings=simpleTheme(pch=rep(c(15,17),2),col=c('brown','green','blue','red')
)
My legend is flat and color coordinated now.
Thank you very much!
--
View this message in context: http://r.789695.n4.nabble.com/Creating-a-flat-legend-grob-for-lattice-xyplot-tp3699235p3699351.html
Sent from the R help mailing list archive at Nabble.com.