美文网首页绘图
测序深度图的制作

测序深度图的制作

作者: 路人里的路人 | 来源:发表于2023-03-23 20:43 被阅读0次

    1.安装samtools并将sam文件转为bam文件
    samtools是一款非常好用的工具,本文我们使用的功能较少。详细的使用方法请见:samtools用法详解_samtools 使用_sunchengquan的博客-CSDN博客

    conda install samtools
    #通过conda安装samtools
    cd /to/your/work/place
    #转到存放有sam文件的文件夹,sam文件为getorganelle组装叶绿体基因组时产生
    samtools view -@8 -b test.sam > test.bam
    #使用samtools view将sam文件转为bam文件,-@表示使用的线程数
    

    2.排序归档和提取

    samtools sort -o test_sort.bam test.bam
    #对bam文件进行排序
    samtools index test_sort.bam
    #对test_sort.bam构建索引
    samtools depth test_sort.bam > test_depth.txt
    #计算每一个位点或者区域的测序深度并生成文件储存
    cut -f 2-3 test_depth.txt > depth.txt
    #对生成的txt文件进行数据裁剪,直接使用Linux的cut命令,-f表示裁剪整列,2-3表示裁剪后保存2-3列
    

    3.画测序深度图
    先将上一步得到的count文件放入R的工作目录

    getwd()
    #查看工作目录
    setwd("/path/to/your/work/place")
    #设置工作目录
    install.packages("ggplot2")
    #如果没有安装ggplot2,可以安装install.packages(c("package1","package2",....)),此命令可同时安装多个包
    library(ggplot2)
    #加载ggplot2
    depths <- read.table("test_depth.txt.count")
    #读取测序深度数据
    ggplot(depths, aes(x=V1, fill="blue")) + 
      geom_histogram(binwidth=10) + 
      labs(title = "Sequencing Depth Distribution", x = "Depth", y = "Frequency") +
      scale_fill_manual(values="blue") +
      scale_x_continuous(limits = c(0, 200000), 
                         breaks = seq(0, 200000, 50000),
                         labels = c("0", "50k", "100k", "150k", "200k")) +
      scale_y_continuous(limits = c(0, 200), 
                         breaks = seq(0, 200, 20)) +
      theme(panel.grid.major = element_blank(),
            panel.grid.minor = element_blank())
    #第一行规定了柱状图的颜色
    #第二行定义了x轴y轴和注释信息
    #第五、六、七行规定了X轴的长度和间隔
    #第八、九行规定了Y轴的长度和间隔
    

    Rstudio可以选择输出文件的类型,有png和pdf两种。

    相关文章

      网友评论

        本文标题:测序深度图的制作

        本文链接:https://www.haomeiwen.com/subject/utoirdtx.html