Paul.Rustomji at csiro.au
2008-Jun-25 21:31 UTC
[R] Use plotmath expressions read from a text file in mtext/bquote
Hello R-help List I am writing some R scripts to create graphs of water quality trends that will be called by a web service running R. The axis titles will need to change as the input data (ie. water quality variable) changes according to a user's choice made via a web page. The way I am currently passing call-specific parameters to the R script is via a text file created on the fly by the web service that is then loaded into a list: Ie.>Rscript script1.r par.file.txtfoo <- commandArgs() par.file <- foo[1] The parameter text file "par.file.txt" assembed by the web server contains: 222222 #station number "River at River" #station name "ec" #name of wq variable to be plotted "EC"~(mu~s/cm) #axis label (in R plotmath expression) for RHS axis label And is read into a list called "ipf" via scan: ipf.headings <- list(stn=0,stn.name="",wqvar.name="",wqvar.axlab="") ipf <- scan(par.file, ipf.headings,strip.white=T,comment.char="#") Now, I would like to make a plot with a plotmath expression as the axis title that looks something like this: plot(1:10) textstr <- ("EC"~(mu~S/cm)) mtext(bquote(.(textstr)),side=4) Note that the mu should ideally be the greek character "mu" and EC is electrical conductivity in milli Siemens per centimetre. The trouble I am having is getting the axis label string (last line of par.file) into R in a way that the mtext/bquote command understands. There seem to be issues around the quoting and perhaps the use of tildes "~" in the plotmath expression. Any ideas? Paul Paul Rustomji CSIRO Land and Water