我有一个相当复杂的facet_wrap的等值线图,它们有一个共同的图例并将它们分成单独的图.我想在未使用的构面区域添加另一个非常简单的条形图.我想我可以使用annotation_custom
如下所示:
https://github.com/hadley/ggplot2/wiki/Mixing-ggplot2-graphs-with-other-graphical-output
p = qplot(1:10, 1:10) + theme_bw()
g = ggplotGrob(qplot(1, 1))
p + annotation_custom(grob = g, xmin = 2, xmax = 7, ymin = 6, ymax = 10)
Run Code Online (Sandbox Code Playgroud)
但即使在使用x/y-min/max时,这似乎也没有正确调整大小.它似乎想要在每个方面进行注释.不是我想要的.
将每个方面分成单独的图并使用gridExtra::grid.arrange
将是困难的,因为每个方面共同产生的共享梯度图例.
plot1 <- ggplot(mtcars, aes(factor(mtcars$gear))) +
geom_bar() +
facet_wrap(~cyl, ncol=2) +
coord_flip()
plot2 <- ggplot(mtcars, aes(as.factor(am))) +
geom_bar(aes(fill=factor(cyl)))
Run Code Online (Sandbox Code Playgroud)
这失败了(每个方面的图表):
g <- ggplotGrob(plot2)
plot1 + annotation_custom(grob = g, xmin = 0, xmax = 1, ymin = 0, ymax = 1)
Run Code Online (Sandbox Code Playgroud)
期望的样子:
bap*_*ste 10
g1 <- ggplotGrob(plot1)
g2 <- ggplotGrob(plot2)
g1 <- gtable::gtable_add_grob(g1, g2, t = 8, l=7)
grid.newpage()
grid.draw(g1)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1163 次 |
最近记录: |