color for the legend comes from trellis.par.get You can control that for an individual plot with the par.settings argument.
tmp <- data.frame(y=sample(10), group=rep(c("Median", "Maximum"), each=5), year=factor(rep(1998:1999, length=10))) barchart(y ~ year, data=tmp, group=group, auto.key=TRUE, main="default legend", col = c('grey','black')) barchart(y ~ year, data=tmp, group=group, auto.key=TRUE, main="what you want", par.settings=list(superpose.polygon=list(col=c('grey','black')))) names(trellis.par.get()) trellis.par.get()$superpose.polygon On Fri, Aug 24, 2018 at 3:37 PM, Rich Shepard <rshep...@appl-ecosys.com> wrote: > On Wed, 22 Aug 2018, Rich Shepard wrote: > >> More when I have results. > > > Almost there. I've read the auto.key section in ?barchart and looked at > examples from stackoverflow on the web without seeing my syntax errors. I > would like help on two issues: > > 1. What I want is to have the legend text in black and the colored > rectangles match the black and grey of the bars. Instead, I get the legend > text colored and have no idea where the default colors in the rectangles got > there. > > 2. I've not found how to have the years (rather than the sequence of > years) as the x-axis labels. > > Here are the dput() output and the script: > > structure(list(year = c(1989L, 1989L, 1990L, 1990L, 1991L, 1991L, 1993L, > 1993L, 1994L, 1994L, 1995L, 1995L, 1996L, 1996L, 1997L, 1997L, 1998L, 1998L, > 1999L, 1999L, 2000L, 2000L, 2001L, 2001L, 2002L, 2002L, 2003L, 2003L, 2004L, > 2004L, 2005L, 2005L, 2006L, 2006L, 2007L, 2007L, 2008L, 2008L, 2009L, 2009L, > 2010L, 2010L, 2011L, 2011L, 2012L, 2012L, 2013L, 2013L, 2014L, 2014L, 2015L, > 2015L, 2016L, 2016L, 2017L, 2017L, 2018L, 2018L), value = c(91.17, 93.32, > 91.22, 93.43, 91.24, 92.89, 91.14, 93.02, 93.92, 95.74, 94.34, 96.85, 91.32, > 95.86, 91.36, 94.25, 91.24, 93.67, 94.33, 97.42, 94.33, 97.42, 94, 94.99, > 94.32, 96.58, 94.02, 96.57, 94.19, 96.32, 94.05, 95.96, 94.21, 97.4, 94.21, > 97.28, 94.32, 96.72, 94.13, 97.43, 94.27, 95.95, 94.34, 97.82, 94.23, 97, > 94.25, 96.6, 94.15, 96.24, 94.01, 96.68, 94.09, 96.96, 94.31, 96.39, 94.35, > 96.95), type = structure(c(2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, > 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, > 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, > 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L), .Label = c("Max", "Med"), class = > "factor")), class = "data.frame", row.names = c(NA, -58L)) > > med_max <- barchart(value ~ year, data=stage_heights, > panel = lattice.getOption("panel.barchart"), > default.prepanel = > lattice.getOption("prepanel.default.barchart"), > box.ratio = 2, horizontal=FALSE, > auto.key=list(space='right', > > col=c('black', 'grey')), > groups=factor(type,labels=c('Median','Maximum')), > beside=TRUE, > col = c('grey','black'), > labels=list(c(1989,1990,1991,1992, 1993,1994, > > 1995,1996,1997,1998,1999,2000,2001, > > 2002,2003,2004,2005,2006,2007,2008, > > 2009,2010,2011,2012,2013,2014,2015, > 2016,2017,2018), > > scales=list(x=list(rot=90)), > main = 'Median and > Maximum Stage Heights', > ylab = 'Elevation > (masl)', xlab = 'Year') > print(med_max) > > > Rich > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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 -- To UNSUBSCRIBE and more, see 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.