如何为以下情节和边缘创建图例?我搜索了低谷?theme
,但我不知道。
library(ggplot2)
data <- data.frame(col1 = c(1, 2, 2, 3, 3, 4), col2 = c(1, 2, 2, 1, 2, 1), z = rnorm(6))
p1 <- ggplot(data, aes(col1, y = ..count..,fill=col2))
p1 <- p1 + geom_bar()
p2 <- ggplot(data, aes(x = z))
p2<-p2 + geom_density()
p2
gt1 <- ggplot_gtable(ggplot_build(p1))
gt2 <- ggplot_gtable(ggplot_build(p2))
获取 x 轴和 y 轴标题和文本的最大宽度和高度
maxWidth = unit.pmax(gt1$widths[2:3], gt2$widths[2:3])
在 gt1、gt2 和 gt3 的 gtable 中设置最大值
gt1$widths[2:3] <- as.list(maxWidth)
gt2$widths[2:3] <- as.list(maxWidth)
将散点图与两个边缘箱线图结合创建一个新的 gtable
gt <- gtable(widths = unit(c(7, 2), "null"), height = unit(c(2, 7), "null"))
将 gt1、gt2 和 gt3 插入新的 gtable
gt <- gtable_add_grob(gt, gt1, 2, 1)
gt <- gtable_add_grob(gt, gt2, 1, 1)
并渲染情节
grid.newpage()
grid.draw(gt)