利用jcvi绘制点图时遇到latex报错

1. 安装jcvi

可以直接conda安装,记得在python2的环境下哦,3会报错。

conda install -c bioconda -y jcvi

2. 准备文件(CDS,pep,gff3)

准备文件

3. 我们分析只需要用到每个基因最长的转录本就行,用jcvi就可以可以做到这件事情,先将gff转成bed格式

python2 -m jcvi.formats.gff bed --type=mRNA --key=ID A.aquatica.EVM.gff3.gz > aquatica.bed
python2 -m jcvi.formats.gff bed --type=mRNA --key=ID GCA_002102615.1_NepCla1.0_genomic.gff.gz > Nepcla.bed
python2 -m jcvi.formats.gff bed --type=mRNA --key=ID GCA_000611955.2_Stegodyphus_mimosarum_v1_genomic.gff.gz > Stemim.bed
这里的--type=mRNA没错,但是后面的--key你要看自己的gff文件长什么样哦。默认=ID
gff转bed

然后将bed进行去重复

python2 -m jcvi.formats.bed uniq aquatica.bed
python2 -m jcvi.formats.bed uniq Nepcla.bed
python2 -m jcvi.formats.bed uniq Stemim.bed
uniqbed文件

最后我们得到了aquatica.uniq.bed和Nepcla.uniq.bed, 根据bed文件第4列就可以用于提取cds序列和蛋白序列。

seqkit grep -f <(cut -f 4 aquatica.uniq.bed ) A.aquatica.EVM.CDS.fasta.gz | seqkit seq -i > aquatica.cds
seqkit grep -f <(cut -f 4 Nepcla.uniq.bed ) NepCla.CDS.fasta.gz | seqkit seq -i > Nepcla.cds
seqkit grep -f <(cut -f 4 Stemim.uniq.bed ) Stegodyphus_mimosarum_cds.fa.gz | seqkit seq -i > Stemim.cds
cds文件

最后就获得了这些文件


cds+bed

4.BLAST比对

makeblastdb -in Nepcla.cds -out db/Nepcla -dbtype nucl
blastn -num_threads 20  -query Stemim.cds -db db/Nepcla -outfmt 6 -evalue 1e-5 -num_alignments 5 > Ste_Nep.blast

jcvi.compara.blastfilter对结果进行过滤

python -m jcvi.compara.blastfilter --no_strip_names Ste_Nep.blast --sbed Nepcla.uniq.bed --qbed Stemim.uniq.bed
过滤结果

最后输出aly_ath.blast.filtered用于做图

python -m jcvi.graphics.blastplot Ste_Nep.blast.filtered --sbed Nepcla.uniq.bed --qbed Stemim.uniq.bed

报错1:
由于服务器里没有这种字体

/.../software/Python-2.7.8/lib/python2.7/site-packages/matplotlib/font_manager.py:1316: UserWarning: findfont: Font family [u'sans-serif'] not found. Falling back to DejaVu Sans
  (prop.get_family(), self.defaultFamily[fontext]))
  1. ~/.cache/matplotlib/fontList.json文件存储了matplotlib运行是会调用的字体信息;出现上述错误说明该文件中必然没有Helvetica相关的信息,或者对应的Helvetica.ttf文件;
  2. 在网上下载一个Helvetica.ttf文件,放在matplotlib的font目录(***/matplotlib/mpl-data/fonts/ttf/)或者系统的font目录下都行(/usr/share/fonts/);
  3. 删除/.cache/matplotlib目录,重新运行你的画图脚本;此时程序会自动在/.cache目录下生成matplotlib目录以及fontList.json文件;
    一般来说到这里就应该成功了。

报错2:

OSError: [Errno 2] No such file or directory: 'latex'
latex报错

这是由于服务器里面没有这个排版的软件

  1. 下载 iso 镜像(有root权限哈)
wget -c https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/texlive2019.iso
  1. 挂载镜像到 /mnt/ 并执行安装命令
su -
mount -o loop texlive2019.iso /mnt/ 
cd /mnt 
./install-tl

执行最后一条命令之后会出现下面的选项:
输入 I 然后回车进行安装


安装结果
  1. 设置环境变量
export MANPATH=${MANPATH}:/urs/local/texlive/2019/texmf-dist/doc/man
export INFOPATH=${INFOPATH}:/usr/local/texlive/2019/texmf-dist/doc/info
export PATH=${PATH}:/usr/local/texlive/2019/bin/x86_64-linux
  1. 设置清华源 更新所有宏包
 [CTAN](https://www.ctan.org/) (The Comprehensive TeX Archive Network) 镜像源可以使用 TeX Live 管理器 tlmgr 更改。

在命令行中执行

tlmgr option repository [https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet](https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet)

即可永久更改镜像源。

如果只需要临时切换,可以用如下命令:

tlmgr update --all --repository [https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet](https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet)

其中的 update --all 指令可根据需要修改。

# 如下载时出现问题请将地址中的 https 改为 http。
  1. 卸载镜像
sudo umount /mnt

参考:

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

推荐阅读更多精彩内容

  • 这是唐海宝老师GitHub上的JCVI工具的非官方说明书。该工具集的功能非常多,但是教程资料目前看起来并不多,因此...
    xuzhougeng阅读 5,081评论 2 19
  • 一、文件/文件夹管理 ls 列出当前目录文件(不包括隐含文件)ls -a 列出当前目录文件(包括隐含文件)l...
    路痴千行阅读 2,389评论 0 5
  • 连续九天的上班,俨然已经让我累成狗了,似乎连生活是什么样的,早就忘的一干二净了。每天的生活近似以一种麻木的状态进行...
    沙漠里的胡杨v阅读 493评论 2 4
  • 更新:20190319 使用EasyCodeML完成dnds的计算,自己尝试了分支模型和位点模型的计算,简直不要太...
    小明的数据分析笔记本阅读 23,579评论 15 39
  • 别人家的孩子 在育儿的过程中难免会有吧,别人家的孩子吃饭快,别人家的孩子长的又高又壮实,别人家的孩子好大方,...
    小小心间梦阅读 96评论 0 0