## I would like help in using variable values in plotmath expressions ## in lattice x <- 1:10 y <- 1:10 pval <- .95 plot(y ~ x, ## works as I want in base graphics main=substitute(list(alpha * " = " * group("",list(p),"")), list(p=pval))) plot(y ~ x, ## doesn't work as intended: "pval" is displayed main=substitute(list(alpha * " = " * group("",list(pval),"")))) try( ## doesn't work: object 'alpha' not found xyplot(y ~ x, main=substitute(list(alpha * " = " * group("",list(p),"")), list(p=pval))) ) xyplot(y ~ x, ## doesn't work as intended: "substitute" is displayed main=expression(substitute(list(alpha * " = " * group("",list(p),"")), list(p=pval)))) xyplot(y ~ x, ## doesn't work as intended: "p" is displayed and "pval" is displayed main=expression(list(alpha * " = " * group("",list(p),"")), list(p=pval))) xyplot(y ~ x, ## doesn't work as intended: "pval" is displayed main=expression(list(alpha * " = " * group("",list(pval),"")))) Thanks Rich [[alternative HTML version deleted]]
Hi Rich, I'm not sure if you have a reason outside this toy example to want to be using list() and group(), but if not I would go with this: xyplot(y ~ x, main = substitute(expression(alpha == p), list(p = pval))) Hope this helps, Josh On Thu, Mar 15, 2012 at 7:25 PM, Richard M. Heiberger <rmh at temple.edu> wrote:> ## I would like help in using variable values in plotmath expressions > ## in lattice > > x <- 1:10 > y <- 1:10 > pval <- .95 > > plot(y ~ x, ## works as I want in base graphics > ? ? main=substitute(list(alpha * " = " * group("",list(p),"")), > list(p=pval))) > > plot(y ~ x, ## doesn't work as intended: "pval" is displayed > ? ? main=substitute(list(alpha * " = " * group("",list(pval),"")))) > > try( ## doesn't work: object 'alpha' not found > xyplot(y ~ x, > ? ? main=substitute(list(alpha * " = " * group("",list(p),"")), > list(p=pval))) > ) > > xyplot(y ~ x, ## doesn't work as intended: "substitute" is displayed > ? ? main=expression(substitute(list(alpha * " = " * group("",list(p),"")), > list(p=pval)))) > > xyplot(y ~ x, ## doesn't work as intended: "p" is displayed and "pval" is > displayed > ? ? main=expression(list(alpha * " = " * group("",list(p),"")), > list(p=pval))) > > xyplot(y ~ x, ## doesn't work as intended: "pval" is displayed > ? ? main=expression(list(alpha * " = " * group("",list(pval),"")))) > > > Thanks > Rich > > ? ? ? ?[[alternative HTML version deleted]] > > ______________________________________________ > 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.-- Joshua Wiley Ph.D. Student, Health Psychology Programmer Analyst II, Statistical Consulting Group University of California, Los Angeles https://joshuawiley.com/
On Thu, Mar 15, 2012 at 10:25 PM, Richard M. Heiberger <rmh at temple.edu> wrote:> ## I would like help in using variable values in plotmath expressions > ## in lattice > > x <- 1:10 > y <- 1:10 > pval <- .95 > > plot(y ~ x, ## works as I want in base graphics > ? ? main=substitute(list(alpha * " = " * group("",list(p),"")), > list(p=pval))) > > plot(y ~ x, ## doesn't work as intended: "pval" is displayed > ? ? main=substitute(list(alpha * " = " * group("",list(pval),"")))) > > try( ## doesn't work: object 'alpha' not found > xyplot(y ~ x, > ? ? main=substitute(list(alpha * " = " * group("",list(p),"")), > list(p=pval))) > ) > > xyplot(y ~ x, ## doesn't work as intended: "substitute" is displayed > ? ? main=expression(substitute(list(alpha * " = " * group("",list(p),"")), > list(p=pval)))) > > xyplot(y ~ x, ## doesn't work as intended: "p" is displayed and "pval" is > displayed > ? ? main=expression(list(alpha * " = " * group("",list(p),"")), > list(p=pval))) > > xyplot(y ~ x, ## doesn't work as intended: "pval" is displayed > ? ? main=expression(list(alpha * " = " * group("",list(pval),""))))Try bquote with classic graphics or as.expression(bquote(...)) with lattice: plot(y ~ x, main = bquote(alpha == .(pval))) xyplot(y ~ x, main = as.expression(bquote(alpha == group("", .(pval) ,"")))) -- Statistics & Software Consulting GKX Group, GKX Associates Inc. tel: 1-877-GKX-GROUP email: ggrothendieck at gmail.com