其他
「盘点」R语言的那些拼图方法(二)
大神一句话,菜鸟跑半年。我不是大神,但我可以缩短你走弯路的半年~
就像歌儿唱的那样,如果你不知道该往哪儿走,就留在这学点生信好不好~
这里有豆豆和花花的学习历程,从新手到进阶,生信路上有你有我!
花花写于 2019-09-18
书接上回!太长了图片粘贴老是失败,我太难了!豆豆今天困,不肯来办公室加班。请和上一条的代码一起运行,不然可能报错缺包。
4.customLayout
这个灰常好!我要详细讲一下
(1)简单布局
if(!require(customLayout))install.packages("customLayout")
library(customLayout)
lay1 <- lay_new(
mat = matrix(1:4, ncol = 2),#数字矩阵
widths = c(3, 2),#宽度比
heights = c(2, 1)) #高度比
lay_show(lay1)
lay2 <- lay_new(
mat = matrix(1:4, ncol = 2),
widths = c(3, 5),
heights = c(2, 4))
lay_show(lay2)
(2)两个简单面板拼接
#1)横向
lay3 = lay_bind_col(lay1, lay2, widths = c(3, 1))
lay_show(lay3)
#2)纵向
lay4 <- lay_bind_row(lay1, lay2, heights = c(5, 2))
lay_show(lay4)
(3)嵌套
lay <- lay_new(
matrix(1:4, nc = 2),
widths = c(3, 2),
heights = c(2, 1))
lay_show(lay)
lay2 <- lay_new(
matrix(1:4, nc = 2),
widths = c(3, 5),
heights = c(2, 4))
lay_show(lay2)
把lay2嵌套金lay1的第一个面板
slay <- lay_split_field(lay1, lay2, field = 1)
lay_show(slay)
把lay1嵌套进lay2的第4个面板
flay <- lay_split_field(lay2, lay1, field = 4)
lay_show(flay)
(4)基础绘图的拼接
#本段代码来自帮助文档
par(mar = c(3, 2, 2, 1))
lay <- lay_new(
matrix(1:4, nc = 2),
widths = c(3, 2),
heights = c(2, 1))
lay2 <- lay_new(matrix(1:3))
cl <- lay_bind_col(lay, lay2, widths = c(3, 1))
lay_show(cl)
lay_set(cl)
plot(1:100 + rnorm(100))
plot(rnorm(100), type = "l")
hist(rnorm(500))
acf(rnorm(100))
pie(c(3, 4, 6), col = 2:4)
pie(c(3, 2, 7), col = 2:4 + 3)
pie(c(5, 4, 2), col = 2:4 + 6)
(5)grid(ggplot2)图形对象的拼接
lay <- lay_new( matrix(1:2, ncol = 1))
lay2 <- lay_new(matrix(1:3))
cl <- lay_bind_col(lay, lay2, widths = c(3, 1))
lay_show(cl)
plots2 <- list(p_boxplot,p_density,p_point,p_col,p_s)
lay_grid(plots2, cl)
参考链接:https://zhuanlan.zhihu.com/p/51652596
https://blog.csdn.net/kMD8d5R/article/details/85182184
向大家隆重推荐隔壁生信技能树的一系列干货!
点击底部的“阅读原文”,获得更好的阅读体验哦😻
初学生信,很荣幸带你迈出第一步。
我们是生信星球,一个不拽术语、通俗易懂的生信知识平台。由于是2018年新号,竟然没有留言功能。需要帮助或提出意见请后台留言、联系微信或发送邮件到jieandze1314@gmail.com,每一条都会看到的哦~