1

lower.panel および upper.panel オプションを使用しpairs()てデータのプロットを描画しますが、サブパネルの軸を構成する方法と可能かどうかがわかりません。たとえば、 を使用するとdata(iris)pairs(iris[1:4],xlim=c(0,10))サブプロットのすべての x 軸が 0 から 10 にスケーリングされたプロットが得られます。

試してみるとpairs(iris[1:4],xlim=c(0,10),lower.panel=panel.lm)、それでも問題なく動作します。panel.corのヘルプ ファイルからパネル機能を試すとすぐにpairs()、次のエラーが表示されます。

未使用の引数 (xlim = c(0, 10))

panel.lmとのコードを比較しましたpanel.corが、どこで設定を調整する必要があるかはわかりません。xlimと の設定とは別にylim、それぞれの上部パネルと下部パネルで軸にラベルを付ける必要があるかどうかを指定するのは素晴らしいことですが、これが多すぎるかどうかはわかりません。

参考までに、Rヘルプ ファイルの 2 つの関数を次に示します。

panel.lm<-
function (x, y, col = par("col"), bg = NA, pch = par("pch"),
cex = 1, col.lm = "red", lwd=par("lwd"), ...)
{
points(x, y, pch = pch, col = col, bg = bg, cex = cex)
ok <- is.finite(x) & is.finite(y)
if (any(ok))
    abline(lm(y~x,subset=ok), col = col.lm, ...)
}
panel.cor <- function(x, y, digits=2, prefix="r = ", cex.cor)
{
usr <- par("usr"); on.exit(par(usr))
par(usr = c(0, 1, 0, 1))
r <- cor(x, y)
txt <- format(c(r, 0.123456789), digits=digits)[1]
txt <- paste(prefix, txt, sep="")
if(missing(cex.cor)) cex <- 0.8/strwidth(txt)
text(0.5, 0.5, txt, cex = cex * abs(r))
}
4

1 に答える 1

0

...関数に を含めるのを忘れただけpanel.corです。xlimで機能する唯一の理由panel.lmは、その引数が を介して後続の関数に渡されること...です。省略記号がないpanel.corと、不明な引数xlimが表示され、エラーがスローされます。次のように変更するだけです。

panel.cor <- function(x, y, digits=2, prefix="r = ", cex.cor,...)
于 2013-09-27T14:30:13.920 に答える