On Aug 14, 2012, at 16:54 , Jinsong Zhao wrote: > Hi there, > > In the following function: > > demo.plot <- function( obj ) plot(1:5, obj, xlab = "x") > > Then, I use this function as following: > > y <- rnorm(5) > demo.plot(y) > > It will produce a plot with ylab = "obj", however, I hope to get a plot with > ylab = "y". > > Is it possible to convert object/variable name y to a string "y", so I can > set it in demo.plot(): > > demo.plot <- function( obj ){ > lab.y <- obj.name.2.string(obj) #### I need obj.name.2.string() > plot(1:5, obj, xlab = "x", ylab = lab.y) > } > > I don't know how to define the function obj.name.2.string. > > Any suggestion will be greatly appreciated.
The standard trick involves deparse(substitute(....)). Take a look inside plot.default. > > Regards, > Jinsong > > ______________________________________________ > 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. -- Peter Dalgaard, Professor Center for Statistics, Copenhagen Business School Solbjerg Plads 3, 2000 Frederiksberg, Denmark Phone: (+45)38153501 Email: pd....@cbs.dk Priv: pda...@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.