Dear list members, Within a loop, I need to create an xyplot with only a legend, not even with the default external box drawn by lattice. I already managed to remove the axis labels and tick marks, but I couldn't find in the documentation of xyplot how to remove the external box. I would really appreciate any help with this ------------- START ----------- library(lattice) x<-1:100 cuts <- unique( quantile( as.numeric(x), probs=c(0, 0.25, 0.5, 0.75, 0.9, 0.95, 1), na.rm=TRUE) ) gof.levels <- cut(x, cuts) nlevels <- length(levels(gof.levels)) xyplot(1~1, groups=gof.levels, type="n", xlab="", ylab="", scales=list(draw=FALSE), key = list(x = .5, y = .5, corner = c(0.5, 0.5), title="legend", points = list(pch=16, col=c(2,4,3), cex=1.5), text = list(levels(gof.levels)) ) ) ------------- END ----------- Thanks in advance, Mauricio Zambrano-Bigiarini -- ===========================================FLOODS Action Water Resources Unit (H01) Institute for Environment and Sustainability (IES) European Commission, Joint Research Centre (JRC) webinfo ? ?: http://floods.jrc.ec.europa.eu/ ===========================================DISCLAIMER: "The views expressed are purely those of the writer and may not in any circumstances be regarded as stating an official position of the European Commission." ===========================================Linux user #454569 -- Ubuntu user #17469 ==========================================="There is only one pretty child in the world, and every mother has it." (Chinese Proverb) ===========================================http://c2.com/cgi/wiki?HowToAskQuestionsTheSmartWay
Why do you want to do this? Lattice was not really designed to put just part of the graph up, but rather to create the entire graph using one command. If you want to show a process, putting up part of a graph at a time, it may be better to create the whole graph as a vector graphics file (pdf, postscript, svg, pgf, emf, etc.) then use an external program to remove those parts that you don't want for a given step. On Thu, Mar 8, 2012 at 6:02 AM, Mauricio Zambrano-Bigiarini <hzambran.newsgroups at gmail.com> wrote:> Dear list members, > > Within a loop, I need to create an xyplot with only a legend, not even > with the default external box drawn by lattice. > > I already managed to remove the axis labels and tick marks, but I > couldn't find in the documentation of xyplot how to remove the > external box. > > I would really appreciate any help with this > > > ------------- START ----------- > library(lattice) > > x<-1:100 > cuts <- unique( quantile( as.numeric(x), > ? ? ? ? ? ? ? ? ? ? ? ? ? probs=c(0, 0.25, 0.5, 0.75, 0.9, 0.95, 1), > na.rm=TRUE) ) > > gof.levels <- cut(x, cuts) > nlevels <- length(levels(gof.levels)) > > xyplot(1~1, groups=gof.levels, ?type="n", xlab="", ylab="", > ? ? ? ? ?scales=list(draw=FALSE), > ? ? ? ? ?key = list(x = .5, y = .5, corner = c(0.5, 0.5), > ? ? ? ? ? ? ? ? title="legend", > ? ? ? ? ? ? ? ? points = list(pch=16, col=c(2,4,3), cex=1.5), > ? ? ? ? ? ? ? ? text = list(levels(gof.levels)) > ? ? ? ? ? ? ? ? ? ? ? ? ) > ? ? ?) > > ------------- ?END ?----------- > > Thanks in advance, > > Mauricio Zambrano-Bigiarini > > -- > ===========================================> FLOODS Action > Water Resources Unit (H01) > Institute for Environment and Sustainability (IES) > European Commission, Joint Research Centre (JRC) > webinfo ? ?: http://floods.jrc.ec.europa.eu/ > ===========================================> DISCLAIMER: > "The views expressed are purely those of the writer > and may not in any circumstances be regarded as stating > an official position of the European Commission." > ===========================================> Linux user #454569 -- Ubuntu user #17469 > ===========================================> "There is only one pretty child in the world, > and every mother has it." > (Chinese Proverb) > ===========================================> http://c2.com/cgi/wiki?HowToAskQuestionsTheSmartWay > > ______________________________________________ > 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.-- Gregory (Greg) L. Snow Ph.D. 538280 at gmail.com
On Mar 8, 2012, at 8:02 AM, Mauricio Zambrano-Bigiarini wrote:> Dear list members, > > Within a loop, I need to create an xyplot with only a legend, not even > with the default external box drawn by lattice. > > I already managed to remove the axis labels and tick marks, but I > couldn't find in the documentation of xyplot how to remove the > external box.I found it by searching rhelp at the Newcastle site: From: Jerome Asselin Date: Fri 25 Jul 2003 - 07:54:15 EST trellis.par.set("axis.line",list(col=NA,lty=1,lwd=1)) You can restore the earlier behavior with: trellis.par.set("axis.line",list(col="black",lty=1,lwd=1)) -- David> > I would really appreciate any help with this > > > ------------- START ----------- > library(lattice) > > x<-1:100 > cuts <- unique( quantile( as.numeric(x), > probs=c(0, 0.25, 0.5, 0.75, 0.9, 0.95, 1), > na.rm=TRUE) ) > > gof.levels <- cut(x, cuts) > nlevels <- length(levels(gof.levels)) > > xyplot(1~1, groups=gof.levels, type="n", xlab="", ylab="", > scales=list(draw=FALSE), > key = list(x = .5, y = .5, corner = c(0.5, 0.5), > title="legend", > points = list(pch=16, col=c(2,4,3), cex=1.5), > text = list(levels(gof.levels)) > ) > ) > > ------------- END -----------David Winsemius, MD West Hartford, CT