Hi, Within functions, you often do need to wrap the plotting calls in print() (you would see this if you read the FAQ).
Cheers, Josh On Wed, Jun 1, 2011 at 1:06 PM, Yang Zhang <yanghates...@gmail.com> wrote: > On Wed, Jun 1, 2011 at 1:04 PM, Yang Zhang <yanghates...@gmail.com> wrote: >> I can plot to png's fine when i run this directly from the top-level >> script/console: >> >> png('diamonds.png');qplot(carat,price,data=diamonds);dev.off() >> >> But for some reason it's not working when that's in a function: >> >> (function(){png('diamonds.png');qplot(carat,price,data=diamonds);dev.off()})() >> >> I suspect this is because the qplot's return value must be "returned" >> to the top-level, because this works: >> >> (function(){png('diamonds.png');qplot(carat,price,data=diamonds)})();dev.off() >> >> Any hints on how I can plot from within a function? Thanks in advance. >> > > Actually, just found that things work if I do: > > print(qplot(...)) > > Is this just what you need to do to plot from within functions? > > ______________________________________________ > 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. > -- Joshua Wiley Ph.D. Student, Health Psychology University of California, Los Angeles http://www.joshuawiley.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.