双柱状图柱子数量比较多_微生信生物新年放大招:一条代码完成堆叠柱状图冲击图的操作终结版...

b70fd1a01f69f19edc7475af741c59d2.gif

00. 写在前面

a321e52e0add6a4d51cd05a18556777e.png

  • 堆叠柱状图用于表征高维数据,例如微生物群落,代谢物组成是一种常见的图表类型,所以使用的次数也非常多,理所应当被封装成函数,一键绘制。

  • 冲击图其实添加了堆叠柱状图之间的连线,这对于柱子之间的横向比较会更加容易一些,同堆叠柱状图互为替代。

  • 堆叠柱状图在R语言中实现似乎不难,但是有许多的细节需要把握:整条柱子的子柱块排序问题,是否在柱子上添加标签,过滤低丰度柱子等在我们这条代码中都会解决。甚至前一段时间大家需要在堆叠柱状图上添加误差线,也都在这条代码里的。

01. 一条函数和参数解释


result = barplot(otu = "./otutab.txt",tax = "./taxonomy.txt",map = "./metadata.tsv",j = "Phylum",k= 0.01,rep = 6,axis_ord = "KO-OE-WT",label = FALSE,sd = TRUE)

03b539350c6bb308693f3d92f4215654.png

1e6687ba831bdd73ddc85bb1ea3ea990.png

  • otu = "./otutab.txt" :OTU表格

  • tax = "./taxonomy.txt" :物种注释文件

  • map = "./metadata.tsv":样本分组文件

  • j = "Phylum" :设置按照门为分类水平合并OTU,当然可以选择不同的分类水平;j = "Class";j = "Order";j = "Family";j = "Genus";甚至是OTU,如果你不嫌图例多的话。

  • k= 0.01:按照丰度过滤掉第丰度的物种,减少图例信息。

  • rep = 6 :测定每个处理重复数量。

  • axis_ord = "KO-OE-WT" :柱子在x轴额排布顺序。

  • label = FALSE:是否在柱子上添加标签。

  • sd = TRUE :是否对堆叠柱状图添加标准

02. 处理本地输出图片外我们还可以通过result提取图片

我设置函数返回图形结果的目的是方便大家根据自己需求修改颜色等图形属性。

#提取堆叠柱状图
p = result[[1]]
p
#提取冲击图
p = result[[2]]
p

99d53f33f22f91348859d07a51714354.png

99d53f33f22f91348859d07a51714354.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值