ChIP-Seq数据挖掘系列-5.1: ngs.plot 可视化ChIP-Seq 数据

ngs.plot

ngs.plot 主要用于可视化基因组功能区域的高通量测序结果。


#1. ngs.plot 优点

  • 已整理的注释数据:17个物种(21套基因组),涉及功能原件有: Gene,Exon,CGIs,Enhancers,DHS
  • 能够很好展示某类功能原件或者某部分区域的信号富集程度;
  • 运行速度快,内存消耗适中。

#2. ngs.plot 数据处理流程如下

  1. bam文件建立索引
  2. 根据功能原件的基因组坐标索引bam文件
  3. 计算功能原件区域富集信号丰度
  4. 画图:富集轮廓图和热图
The workflow of an ngs.plot run

#3. 支持的基因组 和自行构建基因组注释

  • ngs.plot准备好基因组信息见 SupportedGenomes
    Summary statistics of the ngs.plot database

#4. 扩展注释包: Enhancers 和 DHSs

基因组基础包只是包含 genebody, CGI, exon;对于hg19mm9ngs.plot 准备了额外的Enhancers 和 DHSs注释;

#5. 安装

git clone https://github.com/shenlab-sinai/ngsplot.git
cd ngsplot/
#Add ngs.plot path in ~/.bash_profile
echo 'export PATH=~/software/ngsplot/bin:$PATH' >>~/.bash_profile
echo 'export NGSPLOT=~/software/ngsplot' >>~/.bash_profile
source ~/.bash_profile
install.packages("doMC", dep=T)
install.packages("caTools", dep=T)
install.packages("utils", dep=T)
  • 对于R <3.0,多操作一步:
source("http://bioconductor.org/biocLite.R")
biocLite( "BSgenome" )
biocLite( "Rsamtools" )
biocLite( "ShortRead" )

#6. 使用

##6.1 注释数据的管理: ngsplotdb.py

# List installed genomes.
ngsplotdb.py list  
# Install reference genome from a package file.
ngsplotdb.py install ngsplotdb_hg19_71_2.0.tar.gz  
# Remove installed genome.
ngsplotdb.py remove hg19 
# Remove enhancer installation from hg19.
ngsplotdb.py remove --ftr enhancer hg19  
  • "-F" 参数
#-F [gene_type][,sub_region][,cell_line or tissue][,exon_type][,rnaseq or chipseq]
-F K562  # Select cell line.
-F K562,lincRNA  # Select cell line and gene type.
-F lincRNA,K562  # Same as above(order does not matter).
-F Promoter3k,H1hesc,protein_coding  # Select region, cell line and gene type(apply to DHS only).

##6.2 ngs.plot.r 作图

ngs.plot.r参数设置,参考文章ngs.plot 画图工具ngs.plot.r 和 replot.r 参数详解

  • ngs.plot.r 可视化ChIP-seq 或 RNA-seq,对全基因组或者感兴趣的基因组功能原件富集信号进行可视化。
Usage: ngs.plot.r -G genome -R region -C [cov|config]file -O name [Options]
## 必须参数:
  -G   基因组
  -R   基因组区域tss, tes, genebody, exon, cgi, enhancer, dhs, bed
  -C   Indexed bam 文件 或 配置文件(可以同时画多个图)
  -O   输出结果前缀

##6.3 replot.r

ngs.plot.r参数设置,参考文章:[ngs.plot 画图工具ngs.plot.r 和 replot.r 参数详解]

  • 利用ngs.plot.r 产生的画图数据进行重新画图
Usage: replot.r command -I input.zip -O name
  command: prof OR heatmap
## 必须参数:
    -I  ngs.plot.r 产生的画图数据
    -O  输出结果前缀

#7. 例子

##7.1 ngs.plot.r 作图

  1. 输入和输出
  • 输入数据:建过索引的bam文件或者配置文件。
  • 输出文件:一个富集轮廓图,一个热图,用于作图的数据保存的文件
ngs.plot.r -G hg19 -R tss -C hesc.H3k4me3.rmdup.sort.bam -O hesc.H3k4me3.tss -T H3K4me3 -L 3000 -FL 300
hesc.H3k4me3.tss.all.png
  1. ngs.plot.r 作图也可以使用一对bam文件,例如,ChIP vs. Input。
ngs.plot.r -G hg19 -R tss -C hesc.H3k4me3.rmdup.sort.bam:hesc.Input.rmdup.sort.bam -O hesc.H3k4me3vsInp.tss -T H3K4me3 -L 3000

Data from: Ernst, J., et al. (2011). Mapping and analysis of chromatin state dynamics in nine human cell types. Nature 473, 43-49.

h3k4me3_bampair.png

  1. ngs.plot 对多个数据作图
  • 需要使用参数-C 导入配置文件,下面看几个例子:

    data are from: ENCODE Project Consortium, et al. (2012). An integrated encyclopedia of DNA elements in the human genome. Nature 489, 57-74.
    H3K4me3配置文件config.hesc.k36.txt

# If you want to specify the gene list as "genome", use "-1".
# Use TAB to separate the three columns: coverage file<TAB>gene list<TAB>title
# "title" will be shown in the figure's legend.
hesc.H3k4me3.rmdup.sort.bam     high_expressed_genes.txt         "High"
hesc.H3k4me3.rmdup.sort.bam     medium_expressed_genes.txt       "Med"
hesc.H3k4me3.rmdup.sort.bam     low_expressed_genes.txt          "Low"
ngs.plot.r -G hg19 -R genebody -C config.hesc.k4.txt -O hesc.k4.genebody -D ensembl -FL 300
hesc.k4.genebody.all.png

H3K36me3配置文件config.hesc.k36.txt

hesc.H3k36me3.rmdup.sort.bam     high_expressed_genes.txt         "High"
hesc.H3k36me3.rmdup.sort.bam     medium_expressed_genes.txt       "Med"
hesc.H3k36me3.rmdup.sort.bam     low_expressed_genes.txt          "Low"
ngs.plot.r -G hg19 -R genebody -C config.hesc.k36.txt -O hesc.k36.genebody -D ensembl -FL 300
hesc.k36.genebody.all.png

H3K27me3配置文件config.hesc.k27.txt

hesc.H3k27me3.rmdup.sort.bam     high_expressed_genes.txt         "High"
hesc.H3k27me3.rmdup.sort.bam     medium_expressed_genes.txt       "Med"
hesc.H3k27me3.rmdup.sort.bam     low_expressed_genes.txt          "Low"
ngs.plot.r -G hg19 -R genebody -C config.hesc.k27.txt -O hesc.k27.genebody -D ensembl -FL 300
hesc.k27.genebody.all.png

做热图时,ngs.plot 有不同的基因或区域排序算法,也有层次聚类和k-means两种聚类方法。为例避免高测序深度样本带来的偏差; 在聚类时,将值转化为排名。

配置文件: config.k4k27.inp.txt

hesc.H3k27me3.sort.bam:hesc.Input.sort.bam    -1      "H3k27me3"
hesc.H3k4me3.sort.bam:hesc.Input.sort.bam     -1      "H3k4me3"
ngs.plot.r -G hg19 -R genebody -L 3000 -C config.k4k27.inp.txt -O k4k27_km_gb -GO km
k4k27_km_web_gb_mod.png
  • ngs.plot 也可以用于 RNA-seq数据; 对于RNA完整度为7.8的测序数据和降解到完整度只有3的测序数据进行分析:
Individual1_3.bam     -1       "Individual1_3"
Individual2_7.8.bam   -1       "Individual2_7.8"
ngs.plot.r -G hg19 -R genebody -C config.RIN_number.txt -O RIN_number -F rnaseq
RIN_number.all.png

8. 参考

  1. ngsplot
  2. ngs.plot: Quick mining and visualization of next-generation sequencing data by integrating genomic databases
  3. ngs.plot 画图工具ngs.plot.r 和 replot.r 参数详解


ChIP-Seq 数据挖掘系列文章目录:
ChIP-Seq数据挖掘系列-1:Motif 分析(1)-HOMER 安装
ChIP-Seq数据挖掘系列-2: Motif 分析(2) - HOMER Motif 分析基本步骤
ChIP-Seq数据挖掘系列-3: Motif 分析(3) - 利用ChIP-Seq结果在基因组区域中寻找富集的Motifs
ChIP-Seq数据挖掘系列-4: liftOver - 基因组坐标在不同基因组注释版本间转换
ChIP-Seq数据挖掘系列-5.1: ngs.plot 可视化ChIP-Seq 数据
ChIP-Seq数据挖掘系列-5.2: ngs.plot 画图工具ngs.plot.r 和 replot.r 参数详解

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270