HiC学习记录(二)——HiCPlotter

因为很久没用HiCPlotter,而且之前软件也进行过更新,在再次运行相关命令时,提示以下错误:

ImportError: No module named functools_lru_cache

于是就重新安装 matplotlib:pip2 install matplotlib

之后提示,已经成功安装,版本 2.2.4;其中模块 backports.functools-lru-cache 也已经成功安装,版本 1.5

模块都在,不知错哪?于是百度求助,查到一个帖子链接如下,其中提出了多种解决方式:

python 2.7 functools_lru_cache does not import although installed

尝试了两种方式,其中有一种对我有帮助

1、matplotlib的版本问题,将版本退回到2.0.2  ,$ pip install matplotlib==2.0.2

此方式可以解决我遇到的麻烦

2、帖子中提到,不需要降低 matplotlib 的版本,可以通过先卸载 backports.functools-lru-cache模块,然后再重新安装的方法,来解决问题。这个我也试了试,不过对我并没有帮助


解决好问题,使用HiCPlotter画图

需要用到HiC-Pro结果文件中的

HiC互作区间文件:matrix——raw文件夹中的 .bed文件;文件具体内容如下:(前三列分别是染色体及起始位置,第四列是这个区间的编号,在矩阵文件中应用)

chr1 0 1000000 1

chr1 1000000 2000000 2

chr1 2000000 3000000 3

chr1 3000000 4000000 4

HiC互作矩阵文件:matrix——raw文件夹中的 .matrix文件;文件具体内容如下:(每个数字代表的每个100Kb的区间,和bed文件对应)

1 1 678.6580801

2 324.6154051

3 156.8161281

4 135.7309751

那么对于HiCPlotter输出结果最简单的出图运行命令:

python /home/wangyahao/HiC-Pro/HiCPlotter.py -f /media/wangyahao/wyahao/HiC-Pro_out-ym/outfile/hic_results/matrix/sample1/raw/40000/sample1_40000.matrix -tri 1 -bed /media/wangyahao/wyahao/HiC-Pro_out-ym/outfile/hic_results/matrix/sample1/raw/40000/sample1_40000_abs.bed -chr chr12 -o E -r 40000 -n chr12

-f 输入matrix文件

-tri 默认是0,改为“1”指定HiC-Pro文件

-bed 输入bed文件

-n 图的名称

-chr 指定染色体

-wg 是否画整条染色体,默认0,改为“1”激活

-r 分辨率

-o 输出文件前缀

-ptr 是否画三角形热图,默认0,改为“1”激活

-trh 改变三角形高度,默认是5

-ext 输出文件类型,默认 jpeg

-dpi 输出图片分辨率,默认200

其余参数的具体含义、及其他参数的设置可参考HiCPlotter官方manual:About HiCPlotter

还可以参考以下文章:

如何绘制Hi-C全基因组互作图谱--以Nature Genetics月季基因组文章为例

你可能感兴趣的:(HiC学习记录(二)——HiCPlotter)