Files
2026-08-03 18:42:47 +08:00

84 lines
3.5 KiB
Markdown
Executable File

#TV|# 核型图 (Karyotype/Karyogram Analysis)
## 1. 数据准备
### 1.1 Ft.gff (基因位置文件)
- **格式**: `chr\tgene_id\tstart\tend` (制表符分隔,无表头)
- **来源**: 共线性分析输出 `synteny/analysis/{prefix}.gff`
- **生成命令** (参考 run_synteny.py filter_gff3 函数):
```bash
awk -F "\t" '$3=="mRNA" {split($9,a,";"); print $1"\t"a[1]"\t"$4"\t"$5}' Ft_final.gff3 | sed 's/ID=//g' > Ft.gff
```
### 1.2 Ft.SPL.geneID (家族基因ID列表)
- **格式**: 一行一个 gene_id (无表头)
- **来源**: Identify 阶段输出 `final/{prefix}.final_members.id`
- **注意**: 需确认基因ID格式与 Ft.gff 中第2列一致 (是否带 `.01.T01` 后缀)
- **如需去除后缀**:
```bash
sed 's/\.01\.T01//g' Ft.SPL.final_members.id > Ft.SPL.geneID
```
### 1.3 genome.len (染色体长度)
- **格式**: `chr\tlength(bp)` (制表符分隔,无表头)
- **生成命令**:
```bash
seqkit fx2tab -l -n -i Ft.genome.fasta | grep "^Ft" | awk '{print $1"\t"$2}' > genome.len
```
### 1.4 Ft.tandem (串联重复基因)
- **格式**: 每行 `gene1,gene2` (逗号分隔,无表头)
- **来源**: MCScanX 共线性分析的 dup_class.log 或需单独提取
- **说明**: 用于在核型图中标记串联重复基因 (红色点)
- **备选**: 如果没有串联重复数据,可创建空文件 `touch Ft.tandem`
## 2. 绘图
### 2.1 R 脚本
- **脚本位置**: `scripts/karyogram_gene_family.R`
- **参数说明**:
```
1: gff - Ft.gff 文件路径
2: family_ids - Ft.SPL.geneID 文件路径
3: genome_len - genome.len 文件路径
4: tandem - Ft.tandem 文件路径
5: output.pdf - 输出 PDF 文件名
6: label_gap_mb (可选) - 标签最小间距,默认 2 Mb
```
### 2.2 执行命令示例
```bash
# 假设所有文件都在当前目录
Rscript ../scripts/karyogram_gene_family.R Ft.gff Ft.SPL.geneID genome.len Ft.tandem Ft.SPL.karyogram.pdf 2
# 或带参数
Rscript ../scripts/karyogram_gene_family.R Ft.gff Ft.SPL.geneID genome.len Ft.tandem Ft.SPL.karyogram.pdf 5
```
## 3. 输出
- `{prefix}.karyogram.pdf` - 核型图 PDF 文件
## 4. 注意事项
1. **文件路径**: 建议使用软链接指向实际数据位置 (如 `workspace/test_job/synteny/analysis/`)
2. **基因ID匹配**: 确保 Ft.gff 中的基因ID与 Ft.SPL.geneID 中的完全匹配
3. **染色体顺序**: genome.len 中的染色体顺序决定核型图中染色体的排列顺序
## 5. 相关文件位置参考
- R脚本: `/home/xia-lab/wutx/00test/bbav2/scripts/karyogram_gene_family.R`
- 共线性契约: `/home/xia-lab/wutx/00test/bbav2/gfa_core/schemas/stages/synteny_contract_v1.md`
- 示例数据:
- 基因组: `input/test_job/Ft.genome.fasta`
- GFF3: `input/test_job/Ft_final.gff3`
- 基因ID: `workspace/test_job/final/Ft.SPL.final_members.id`
DeepTMHMM预测:biolib run DTU/DeepTMHMM --fasta /home/userlab/home/wutx/00.work/01.gene_family/geneFamily20200803/62.SPL_tree/00.alignment/Ft.SPL.pep.fasta,
biolib_results结果文件夹:deeptmhmm_results.md(最终结果),predicted_topologies.3line(分结果),TMRs.gff3(分结果).亚细胞定位Plant-mPLoc:python home/wutx/00.work/01.gene_family/geneFamily20200803/62.SPL_tree/00.alignment/ziji_danbaizhi_tezheng/get_Plant_mPLoc_out.py --input home/wutx/00.work/01.gene_family/geneFamily20200803/62.SPL_tree/00.alignment/ziji_danbaizhi_tezheng/Ft.SPL.pep.fasta --output Ft.SPL_out.txt, Ft.SPL_out.txt(结果文件);亚细胞定位WoLF PSORT:python wolfpsort_batch.py --input ../../00.alignment/Ft.SPL.pep.fasta --output Ft.SPL_wolf_out.txt,Ft.SPL_wolf_out.txt(结果文件)