On 07.06.2011 11:57, peter dalgaard wrote:
On Jun 6, 2011, at 11:22 , Prof Brian Ripley wrote:
As a further example of the trickiness, the "function" method of plot() relies
on curve(x, ...) being a request to plot the function x(x) against x. I've added a
comment to that effect to the help page.
Ouch. This springs to mind:
fortune(106)
If the answer is parse() you should usually rethink the question.
-- Thomas Lumley
R-help (February 2005)
but curve() predates that insight by half a decade or more. It could probably
do with a redesign, if anyone is up to it.
By the way, it really does work if the 2nd arg is an expression object (as
opposed to an expression evaluating to an expression object):
do.call(curve,list(expression(x)))
or
cl<- quote(curve(x))
cl[[2]]<- expression(x)
eval(cl)
(The trouble with nonstandard evaluation is that it doesn't follow standard
evaluation rules...)
If this is not already a fortune, I will add it.
Which is why I useually circvumvent curve(). It is typically faster to
just evaluate a function at positions x and plot it rather than thinking
minutes about how curve() expects its arguments.
Uwe
______________________________________________
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.