有时,使用某些参数调用函数会导致错误消息formal argument "foo" matched by multiple actual arguments
。是否可以打印模棱两可的实际参数列表?
我问这个的原因目前是plot
类对象的函数mixEM
(由包生成normalmixEM
)mixtools
的问题。它不接受ylim
产生上述错误的参数,但是当我尝试使用ylim2
(它适用于xlab2
、main2
等的方式col2
)时,它说"ylim2" is not a graphical parameter
. 所以我想知道匹配的实际参数是ylim
什么?
usingformals(plot.mixEM)
没有帮助,因为它不包含以 开头的任何内容ylim
,但最后它指的...
是传递给的图形参数plot
。但是,对于plot
功能,ylim
将是明确的。从冲突参数列表中获取更准确的错误描述R
会很有帮助。
更新:MWE:
library(mixtools)
wait = faithful$waiting
mixmdl = normalmixEM(wait)
plot(mixmdl, which = 2, xlim = c(25, 110), nclass=20)
lines(density(wait), lty = 2, lwd = 2)
这会产生一个错误:
plot(mixmdl, which = 2, xlim = c(25, 110), ylim = c(0, .5), nclass=20)
# Error in hist.default(x, prob = TRUE, main = main2, xlab = xlab2, ylim = c(0, :
# formal argument "ylim" matched by multiple actual arguments`
这根本行不通:
plot(mixmdl, which = 2, xlim = c(25, 110), ylim2 = c(0, .5), nclass=20)
# Warning messages:
# 1: In title(main = main, sub = sub, xlab = xlab, ylab = ylab, ...) :
# "ylim2" is not a graphical parameter
# 2: In axis(1, ...) : "ylim2" is not a graphical parameter
# 3: In axis(2, ...) : "ylim2" is not a graphical parameter