fig r函数_R包:gtable包用于处理ggplot2图像

本文介绍了如何使用R包gtable对ggplot2图像进行更高级的定制,包括拼图和嵌图。通过cowplot和gtable的示例,展示了如何调整图像布局,实现不同比例的拼接,并详细解释了gtable在图形嵌入过程中的应用。
摘要由CSDN通过智能技术生成

ggplot2是基于grid的绘图工具,它绘制的图像其实是由多个grob(grid graph object)组成的,比如一张点图,它的标题是titleGrob,点图的基本单元包括pointsGrob。

gtable可以个性化修改定制这些grob对象,从而可以对gplot2绘图对象进行更加高阶的定制,比如拼图、图中嵌图等。

很多工具包都可以进行拼图或嵌图, 比如cowplot、patchwork、ggpubr、gridExtra等等,但是gtable是相对底层的进行操纵ggplot2对象的包。cowplot的很多功能实现就依赖于gtable。

最近探索了一下gtable的使用,主要是两个方面:如何进行拼图和嵌图。

使用gtable进行拼图

cowplot拼图示例

cowplot就可以很方便的进行拼图,使用plot_grid函数即可,如下图所示。

如果觉得每张图片太大,还可以使用scale功能对每张图片进行缩放。

对于ncol、nrow参数而言,它们几乎已经是拼图布局的行列定义的标签了,在多个拼图工具中都能见到,比如ggpubr的ggarrange函数,当然这也不奇怪,毕竟ggarrange就是依赖的cowplot包。

还可以定义多行或者多列的比例,使用rel_widths或者rel_heights来指定。

align参数用于对齐多个图的元素,可以对水平、垂直方向进行对齐。

library(tidyverse)
library(grid)
library(gtable)
library(cowplot)

p1 % ggplot(aes(x = mpg, y = disp, color = am)) + 
  geom_point()
p2 %  ggplot(aes(x = Sepal.Length, y = Sepal.Width)) +
  geom_boxplot(aes(fill = Species))
cowplot::plot_grid(p1, p2, ncol = 2)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值