Usage:
Copy /public/home/zpliu/miniconda3/envs/Python2-dev/bin/python2 /public/home/zpliu/github/HiCPlotter/HiCPlotter.py -h
1.源文件下载
HiCPlotter是一款开源软件,源代码存储在github仓库中。
https://github.com/kcakdemir/HiCPlotter
直接在服务器中下载
--depth=1
只下载最近一次commit,节省时间
Copy ## 源文件将保存在当前路径/HiCPlotter/下
git clone git@github.com:kcakdemir/HiCPlotter.git --depth=1
2.安装依赖
Please note: scipy, numpy and matplotlib modules should be installed and updated to current version. Following versions of numpy (1.9.0, 1.9.2), scipy (0.14.0, 0.15.1) and matplotlib (1.3.1, 1.4.3) have been tested successfully.
HiCPlotter 依赖于python2.7,所以所有的python包都是在python2.7中下载
安装numpy 在安装scipy 最后安装matplotlib
Copy ##安装numpy
pip2.7 install numpy== 1.10.4 --user
##安装scipy
pip2.7 install scipy== 0.17.0 --user
##安装matplotlib
pip2.7 install matplotlib== 1.5.1 --user
3.测试
Copy ##进入源文件
cd path-to/HiCPlotter
## 解压测试数据
gunzip ./data/HiC/Human/hES-nij.chr21.2.gz -v
## Basic Plot
python2 HiCPlotter.py -f data/HiC/Human/hES-nij.chr21.2 -n hES -chr chr21 -r 40000 -o default1 -fh 0
4.开放权限给其他账户
Copy ##修改包目录权限
chmod 755 -R ~/.local/lib/python2.7/site-packages/
##HiCPlotter.py脚本中添加包搜索路径
import os,sys
sys.path.append( "/public/home/zpliu/.local/lib/python2.7/site-packages" )
import platform
其他用户如何使用:
推荐使用第一种方式运行,因为用户自己目录下可能也存在numpy等包,存在版本冲突的可能
Copy # 1.使用我安装的python2.7运行(推荐)
/public/home/zpliu/miniconda3/envs/Python2-dev/bin/python2 /public/home/zpliu/github/HiCPlotter/HiCPlotter.py -h
# 2.使用用户自己的python2运行(不建议,有可能会存在包冲突)
python2 /public/home/zpliu/github/HiCPlotter/HiCPlotter.py -h
5.安装错误
这里错误主要就是两类:
numpy
、scipy
、matplotlib
包的版本不对
我环境中有两个版本的python2,我在使用pip安装numpy
等包时,安装包被安装在`~.local/lib/python2.7/site-packages/下
而我使用的python2是SMARTLink
软件中自带了,在运行测试数据时,总是报版本错误
Copy ##查看包的安装位置和版本号
>>> import numpy
>>> numpy.__version__
'1.10.4'
>>> numpy.__path__
[ '/public/home/zpliu/.local/lib/python2.7/site-packages/numpy' ]
在开放其他用户权限时的错误
ImportError: No module named mpl_toolkits.axes_grid1
Copy ##主要是mpl_toolkits包中没有__init__.py文件
cd /public/home/zpliu/.local/lib/python2.7/site-packages/mpl_toolkits/
touch __init__.py
参考