R count函数_第477期|R语言绘图之图形组合

科研作图/科研文章为了节省版面,我们通常会将多张图片合成一张图,本次分享将向大家展示如何使用R语言进行图形组合。早已闻cowplot大名,但是不知道它的具体目标是什么,本文也会对其重点介绍。

目录

【1】函数par( )  【2】函数layout( ) 【3】cowplot包

   3.1 ggplot2绘图中的基础组合图

   3.2 加上水印文字

   3.3 插入子图 draw_plot()函数

   3.4 添加背景图/Logo

【4】组合图进阶版

80afb66c0c5ed6a3699c47ff0cffd89f.gif

1.函数par( )


在使用函数par( )时, 你需要添加参数mfrow=c(n, m) 去创建一个n行m列的画布,画布中的每一格可以放一张图片,此时图片是按照行排列的。如果你想按照列排列,则需要改用参数mfcol=c(n, m)。
使用mtcars数据集作为示例:

1
e341e2e0f315debd8da610458a275218.png 80afb66c0c5ed6a3699c47ff0cffd89f.gif

2.函数layout( )


使用函数layout(mat)合并图片时需要注意其参数mat是一个矩阵,主要是用于指定单个图片的位置:
画布第一行包含一张图片,而第二行包含两张图片;另外,我们可以通过参数widths= 和 heights= 来更精准地控制每张图片的尺寸,其中widths= 代表的是每一列的宽度,heights= 代表的是每一行的高度:

1
a388af083d4ed1cbfad31fa6c230b136.png 80afb66c0c5ed6a3699c47ff0cffd89f.gif

3.cowplot包

高级作图基本不会使用plot,而是选择ggplot2或者其他工具包,在ggplot2中,想要拼接两个用ggplot绘制的图像是很难的。

cowplot是ggplot2包的一个简单插件,它的目的是为ggplot2提供一个出版级别的主题,使用少量代码即可实现主题统一的修改,如轴标签大小、画图背景。

cowplot包的官网在https://wilkelab.org/cowplot/index.html

源代码在github: https://github.com/wilkelab/cowplot

3.1 ggplot2绘图中的基础组合图

 1library(ggplot2)
fa291cf889df4ad032ab630869108c83.png

另外plot_grid()函数与save_plot()函数组合使用效果是非常好的。
比如你想要生成一个2x2的图形,我们可能想要使用下面的代码:

1plot2by2 NULL, 
72f7940f1be05b0d5380177bf86f1faf.png

3.2 加上水印文字

1p 
467c095cad63c23e0020da78bc65cd83.png

把水印文字放下面,并使用cowplot主题函数theme_half_open()去除网格线(使用
ggplot2的theme_classic()会将水印放在图下一层)

1

9e998e9ad39b5442d25d1b6298eab049.png

3.3 插入子图 draw_plot()函数

 1#插入ggplot2的图
a2bf3d5af960225e10de17da4db7afec.png

除了可以插入ggplot2做的图为子图外,还可以插入基本函数的绘图

 1
2cfb96747713b95499d611701b7e1e7f.png

3.4 添加背景图/Logo

 1
3a37cd22f2d5ab294f07257f889c248b.png

添加Logo

1logo_file 
f077882eb0701624cf268aedc31fbda0.png 80afb66c0c5ed6a3699c47ff0cffd89f.gif

4.组合图进阶版

三个图组合+共享图例:

 1
6f72a5c4d99939130fccaaca7d9f3750.png

参考资料:

1. 牛图cowplot究竟想干啥?https://zhuanlan.zhihu.com/p/135246567

2. R语言进阶之图形的合并 https://zhuanlan.zhihu.com/p/258775613

3. R语言COWPLOT介绍——把不同的图像拼接到一起 https://www.freesion.com/article/7352310716/

2. cowplot官网:https://wilkelab.org/cowplot/index.html

6b84b749ac440c1e0cf166caf5caae8f.png

欢迎大家继续关注猪脑子学术哟,我们共同进步!

97794b0db2ad951f369536f27c8672ad.png

1453b4b8a987202ee1e64d2ea4be8719.gif 1453b4b8a987202ee1e64d2ea4be8719.gif 5e7f10acff6297e39d8996eb0ff8c5b2.png 1453b4b8a987202ee1e64d2ea4be8719.gif 1453b4b8a987202ee1e64d2ea4be8719.gif

扫二维码|关注我们

主编|星空

审核|一辆车一条gai  314

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值