HiC矩阵可视化之-HiCPlotter
1. 软件安装
软件是python写的,不需要安装但是需要安装需要的库。
Numpy, Scipy, Matplotlib.
2. 输入文件要求
=====matrix格式的==============
N X N 的对称矩阵格式
如果没有header:设置-fh = 0,因为默认为1,会跳过第一个行 -ff:是跳过最后几行的
======sparse format===========(HiC-Pro默认的输出方式)
这个需要两个文件:
-tri:默认是0,如果是HiC-Pro的要设置为1
-bed:这个是显示bin ID的bed文件,HiC-Pro也会输出的
======5C data(random matrix)=============
我理解的就是矩阵是随机排列的,并没有顺序去排
可以看出,就显示了哪里有interaction,并不是都显示了
-rb:要设置为1,来激活这个格式
=======整个基因组矩阵=================
其实我觉得和1是一样的,就是这个是多个染色体的
-wg:设置成1,来激活这个功能
3. 软件运行
====显示整个染色体的情况===========
对于只有一个染色体的文件:
这是一个N X N的矩阵文件,数值代表关联强度:
python ../HiCPlotter.py -f../data/HiC/Human/hES-nij.chr21.2 -n hES -chr chr21 -r 40000 -o default1 -fh 0
其中:-f:输入的矩阵文件 -n:相当于R里面的main label -r:分辨率(其实就是bin
size)-o:输出文件的前缀 -fh:和前面一样需要忽略的头文件行数 -chr:显示需要显示的染色体,但是好像必须是chr开头
如果只需要画一部分的话,加上-s -e参数,很好理解,start end
python ../HiCPlotter.py -f../data/HiC/Human/hES-nij.chr21.2 -n hES -chr chr21 -r 40000 -o default12 -fh 0-s 600 -e 900
===============HiCPlotter也可以call TAD并且显示出来====================
通过参数 -ptd:1来激活这一个选项( A boolean whether to plot TADs calledby an algorithm (deprecated) implemented in HiCPlotter (Default value: 0 - setto 1 for activating).
python ../HiCPlotter.py -f../data/HiC/Human/hES-nij.chr21.2 -n hES -chr chr21 -r 40000 -o default13 -fh 0-s 600 -e 900 -ptd 1
TAD的算法相关的一系列参数,暂时还没看懂每个参数调控的什么,需要去读下TAD相关的算法。
下面这个是添了一个: -w:8 (An integer in bins tocalculate insulation scores off from thediagonal (Default value: 5 – based on the resolution ofmatrix file, bins corresponding to 500-800Kb range is suggested)
下面是添加了参数:-pi:1 (这个是显示Insulation的track)(A boolean whether to plot insulation scores calculated for the given window and tadRange parameters )
也可以把以前的TAD加入进行对比,这个是以前TAD的bed文件:
python HiCPlotter.py -fdata/HiC/Human/hES-nij.chr21.2 -n hES -chr chr21 -r 40000 -o default4 -fh 0 -s600 -e 900 -ptd 1 -pptd 1
主要是通过设置 -pptd为1,这个是用的内置的文件:(less -h 5 data/IMR90_domains_hg19.bed )估计用的别到数据的话需要改代码,或者改文件内容
===============画多个HiC数据在一起================================
多组数据输入 -f 后面以空格隔开
python ../HiCPlotter.py -f../data/HiC/Human/GSM1081526_TEV_r1_cis.index.chr6.txt_matrix.txt../data/HiC/Human/GSM1081528_HRV_r1_cis.index.chr6.txt_matrix.txt../data/HiC/Human/GSM1081530_CTRL_r1_cis.index.chr6.txt_matrix.txt../data/HiC/Human/GSM1081533_CTCF_r2_cis.index.chr6.txt_matrix
.txt -n WT RAD21-Depleted siControlCTCF-Depleted -chr chr6 -r 40000 -fh 0 -pi 1 -o Rad21.CTCF -s 2800 -e 2950 -hmc5
-hmc:调整颜色( An integer between 0-5
(Greys(0), Reds(1), YellowToBlue(2), YellowToRed(3-default), Hot(4),BlueToRed(5)) for choosing color scale of the heatmap)
python ../HiCPlotter.py -f../data/HiC/Human/GSM1081526_TEV_r1_cis.index.chr6.txt_matrix.txt../data/HiC/Human/GSM1081528_HRV_r1_cis.index.chr6.txt_matrix.txt../data/HiC/Human/GSM1081530_CTRL_r1_cis.index.chr6.txt_matrix.txt../data/HiC/Human/GSM1081533_CTCF_r2_cis.index.chr6.txt_matrix
.txt -n WT RAD21-Depleted siControlCTCF-Depleted -chr chr6 -r 40000 -fh 0 -pi 1 -o Rad21.CTCF -hmc 5 -sn 0.35
这个是整个chromosome的显示效果
====================含有多个染色体的数据=================================
python ../HiCPlotter.py -f ../data/HiC/Human/GSM1184323-HiCMYZ-Tcell-Rad21WT-R1.mm9.NA.L-1400000-wDiag-noSS-iced.2.matrix-n Tcell_WT -chr Genome -r 1400000 -o Tcell -hmc 5 -fh 4 -pi 1 -wg 1
从数据上可以看出,这个是包含各个染色体的bin数据。
(多条染色体的问题,现在理解它的参数是怎么设置了
-wg: 1
-chr: chrY (If inputformat is triple sparse, -chr parameterwill be used designate to the end chromosome, such as –chr chr11 will plotinteractions starting from chr1 to chr11. Please use –chr chrY for whole genomeinteraction plots. Note: will skip mitochondrial interactions (chrM). )所以在这里 chr是为了确定结束的染色体的
======加入其它track的数据=====================================
在下面这个图中,加入了Chip-seq和RAP-seq的数据,都是以bed形式给出的:
python ../HiCPlotter.py -f../data/HiC/Mouse/mES.chrX -n mES -chr chrX -r 40000 -o RAP -fh 0 -hist../data/HiC/Mouse/GSE46918_pSM33-0hr-Xist_vs_Input.W10000_O7500.bedGraph,../data/HiC/Mouse/GSE46918_pSM33-1hr-Xist_vs_Input.W10000_O7500.bedGraph,../data/HiC/Mouse/GSE46918_pSM33-2hr-Xist_vs_Input.W10000_O7500.bedGraph,../data/HiC/Mouse/GSE46918_pSM33-3hr-Xist_vs_Input.W10000_O7500.bedGraph,../data/HiC/Mouse/GSE46918_pSM33-6hr-Xist_vs_Input.W10000_O7500.bedGraph,../data/HiC/Mouse/wgEncodeLicrHistoneEsb4H3k27me3ME0C57bl6StdSig.chrX.bedGraph-hl Xist_0h,Xist_1h,Xist_2h,Xist_3h,Xist_6h,H3K27me3_0h -pi
1-ptr 0 -fhist 0,1,1,1,1,0 -hmc 5
注意:-f:后面跟的文件以空格隔开
-hist:后面跟的文件以逗号隔开
-fhist:用来描述曲线下面要不要填充
还可以通过-hc来调整曲线下面的颜色
python HiCPlotter.py -fdata/HiC/Human/IMR90-chr10_25kb.RAWobserved_KRnormalizedMatrix.txt -o genes -nIMR90 -chr chr17 -g genes.sorted.bed -r 25000 -s 1800 -e 1850 -histdata/HiC/Human/IMR90.Rad21.bedGraph -hl Rad21 -hm 500 -ext pdf
注意:还可以通过加入 -g来显示基因track的位置
python ../../../HiCPlotter.py -fChr01_WN_500000 Chr01_WT1_500000 Chr01_WT7_500000 -n WN_Chr01 WT1_Chr01WT7_Chr01 -chr chr1 -r 500000 -hist Chr01_WN_RNAseq.V2.txt,
WN_k27.txt,WN_k4.txt,WN_faire.txtChr01_WT1_RNAseq.V2.txt,WT1_K27.txt,WT1_K4.txt,WT1_faire.txtChr01_WT7_RNAseq.V2.txt,WT7_K27.txt,WT7_K4.txt,WT7_faire.txt -hlRNA_seq,HKme3K27,HKme3K4,FAIRE-
seq RNA_seq,HKme3K27,HKme3K4,FAIRE-seqRNA-seq,HKme3K27,HKme3K4,FAIRE-seq -o Chr01_all_test3 -fh 0 -pi 1 -ptd 1 -hmc 5