避免参数重复通过(...)

Los*_*Lin 15 r

我有一个功能

somefun <- function(someparameters , ...) { plot(stuff, ...)}
Run Code Online (Sandbox Code Playgroud)

现在我想在用户没有指定这些参数的情况下为绘图提供一些默认值.(即xlab="").

如何提供一组默认的绘图选项,但仍允许用户覆盖这些参数?因为如果两次输入相同的参数,R将抛出错误:由多个实际参数匹配的形式参数.

我知道我可以通过我的功能传递所有这些选项

somefun <- function(someparameters, main, xlab, ylab, xlim....)
Run Code Online (Sandbox Code Playgroud)

但我宁愿不这样做.

是否有一些简单的解决方案来实现这一目标?

G. *_*eck 20

尝试modifyList使用如下:

f <- function(x, ...) {
    defaults <- list(xlab = "x", ylab = "y")
    args <- modifyList(defaults, list(x = x, ...))
    do.call("plot", args)
}
Run Code Online (Sandbox Code Playgroud)