R:将直方图添加到对图中

时间:2015-04-15 07:38:53

标签: r plot

我想在下图的上半部分的某处添加一个小的直方图X4。你能救我吗?

X1 <- runif(100)
X2 <- runif(100)
X3 <- runif(100)
X4 <- runif(100)
pairs(~ X1 + X2 + X3, upper.panel=NULL)

enter image description here

2 个答案:

答案 0 :(得分:0)

除非使用评论中建议的布局,否则这似乎不可能直接使用配对功能。解决方法是分别绘制相关图和直方图。如果你喜欢成对出现的空X1-X2-X3对角线,你基本上可以模仿使用3x3的网格:

par(mfrow=c(2,2))
plot(X1, X2, xlab="X1", ylab="X2", main="")
hist(X4, main="")
plot(X1, X3, xlab="X1", ylab="X3", main="")
plot(X2, X3, xlab="X2", ylab="X3", main="")

答案 1 :(得分:0)

panel.hist <- function(x, ...)
{
    usr <- par("usr"); on.exit(par(usr))
    par(usr = c(usr[1:2], 0, 1.5) )
    h <- hist(x, plot = FALSE)
    breaks <- h$breaks; nB <- length(breaks)
    y <- h$counts; y <- y/max(y)
    rect(breaks[-nB], 0, breaks[-1], y, col = "cyan", ...)
}
##[source][1]