以下示例数据为例:
x <- rnorm(10000)
y <- rnorm(10000) * x
z <- rnorm(10000) * y
df <- data.frame(x,y,z)
Run Code Online (Sandbox Code Playgroud)
我们可以生成散点图矩阵,如下所示:
splom(df)
Run Code Online (Sandbox Code Playgroud)

但由于大量的重叠点,很难测量密度.
是否有一种直接的方法用双变量直方图热图替换每个图,就像壁球产生的那样?
library(squash)
hist2(df$x, df$y)
Run Code Online (Sandbox Code Playgroud)

这panel.hexbinplot对于大型数据集很方便.
library(hexbin)
splom(df, panel=panel.hexbinplot)
Run Code Online (Sandbox Code Playgroud)

您可以像这样自定义面板功能:
library(hexbin)
splom(df,
panel = function(x, y, ...){
panel.hexbinplot(x, y, style = "nested.lattice",
type = c("g", "smooth"),col='blue', ...)
},
pscale=0, varname.cex=0.7)
Run Code Online (Sandbox Code Playgroud)
你可以玩teh style参数.
