首页 > 解决方案 > 更改函数的参数名称,然后绘制曲线

问题描述

出于某种原因,我不想x用作变量的名称。

mse <- function(h) {
    h + (1/h)
}

R 中的curve函数似乎需要x是参数的名称。所以我愿意

cl <- quote(mse(h))
cl[[2]] <- parse(text = 'x')[[1]]

现在这有效

curve(expr = eval(cl, list(x)))

但是以下不起作用,有人可以帮忙解释为什么吗?谢谢你。

curve(expr = function(x){eval(cl)})

标签: rexpressioneval

解决方案


正如@李哲源和@r2evans所提到的,我会简单地做:

curve(expr = mse(h), xname = 'h')

推荐阅读