17

特定の引数を指定して関数を呼び出すと、エラー メッセージが表示されることがありますformal argument "foo" matched by multiple actual arguments。あいまいな実引数のリストを印刷することは可能ですか?

私がこれを尋ねている理由は、現在、plotクラスのオブジェクト(パッケージからmixEM生成された)の関数の問題です。上記のエラーを生成する引数を受け入れませんが、使用しようとすると( 、などで機能する方法)、 と表示されます。それで、一致する実際の引数は何なのだろうか?normalmixEMmixtoolsylimylim2xlab2main2col2"ylim2" is not a graphical parameterylim

formals(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
4

2 に答える 2