r の格子パッケージを使用して、累積分布関数を表すヒストグラムと xyplot を重ね合わせたいと思います。
カスタムパネル関数でこれを達成しようとしましたが、うまくいかないようです.1つのプロットが単変量で、もう1つは二変量であると思います。
垂直に積み重ねたい2つのプロットの例を次に示します。
set.seed(1)
x <- rnorm(100, 0, 1)
discrete.cdf <- function(x, decreasing=FALSE){
x <- x[order(x,decreasing=FALSE)]
result <- data.frame(rank=1:length(x),x=x)
result$cdf <- result$rank/nrow(result)
return(result)
}
my.df <- discrete.cdf(x)
chart.hist <- histogram(~x, data=my.df, xlab="")
chart.cdf <- xyplot(100*cdf~x, data=my.df, type="s",
ylab="Cumulative Percent of Total")
graphics.off()
trellis.device(width = 6, height = 8)
print(chart.hist, split = c(1,1,1,2), more = TRUE)
print(chart.cdf, split = c(1,2,1,2))
これらを重ねるのではなく、同じフレームに重ねてください。
次のコードは機能しません。また、私が試した単純なバリエーションも機能しません。
xyplot(cdf~x,data=cdf,
panel=function(...){
panel.xyplot(...)
panel.histogram(~x)
})