..and a final addendum: xnm <- quote(gamma) ## makes xnm the name gamma not the string "gamma"
plot(0,xlab = bquote( .(xnm)) -- Bert On Sat, May 19, 2012 at 7:23 AM, Bert Gunter <bgun...@gene.com> wrote: > ... and here is another incantation that may be informative. > > xnm<- as.name("gamma') ## This does the parsing > plot(0, xlab =bquote(.(xnm)) > > The initial puzzle is that if you just set > xnm <- "gamma" > > bquote will insert the string "gamma" rather than the symbol. After > all, that's what plotmath sees for xnm. So the key is telling plotmath > that it's a symbol, not a string. This can either be done before, as > above, or inline, as you and Gabor showed. Unsurprisingly. this also > does it, since as.name() is doing the parsing: > > xnm <- "gamma" > plot(0,xlab=bquote(.(as.name(xnm)))) > > AND we are adhering to Thomas's dictum: bquote is a wrapper for > substitute(), which is what he recommends as the preferable > alternative to eval(parse(...)) . But, heck -- all such software > principles are just guidelines. Whatever works (robustly). > > HTH. > > Cheers, > Bert > > On Sat, May 19, 2012 at 3:17 AM, Gabor Grothendieck > <ggrothendi...@gmail.com> wrote: >> On Sat, May 19, 2012 at 1:18 AM, Rolf Turner <rolf.tur...@xtra.co.nz> wrote: >>> >>> I had such good luck with my previous question to r-help, (a few minutes >>> ago) that I thought I would try again with the following query: >>> >>>> Suppose I have >>>> >>>> xNm <- "gamma" >>>> >>>> I would like to be able to do >>>> >>>> plot(1:10,xlab = <something involving xNm">) >>>> >>>> and get the x axis label to be the Greek letter gamma >>>> (rather than the literal text string "gamma"). >>>> >>>> Is this possible? I've messed around with substitute() >>>> and bquote() and got nowhere. >>> >>> >>> Then, just before clicking on "Send", I had one more thimk, and blow >>> me down, I got something that worked: >>> >>> plot(1:10,xlab=eval(expression(parse(text=xNm)))) >>> >> >> That can be shortened to: >> >> plot(0, xlab = parse(text = xNm)) >> >> -- >> Statistics & Software Consulting >> GKX Group, GKX Associates Inc. >> tel: 1-877-GKX-GROUP >> email: ggrothendieck at gmail.com >> >> ______________________________________________ >> 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. > > > > -- > > Bert Gunter > Genentech Nonclinical Biostatistics > > Internal Contact Info: > Phone: 467-7374 > Website: > http://pharmadevelopment.roche.com/index/pdb/pdb-functional-groups/pdb-biostatistics/pdb-ncb-home.htm -- Bert Gunter Genentech Nonclinical Biostatistics Internal Contact Info: Phone: 467-7374 Website: http://pharmadevelopment.roche.com/index/pdb/pdb-functional-groups/pdb-biostatistics/pdb-ncb-home.htm ______________________________________________ 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.