基因组、染色体和基因水平上可视化拷贝数变异(CNVs)

1.CNVmap简介

CNVmap是一种用于在基因组、染色体和基因水平上可视化拷贝数变异(CNVs)的工具。CNVkit和CNVpytor是一种检测全基因组拷贝数变异和变异的软件, 该工具的输入是从CNVkit / CNVpytor工具获得的**.cns和.cnr文件格式**。可用于CNV-seq、WGS等项目中CNVs的可视化。

CNVs与疾病的发生密切相关,体细胞拷贝数改变会导致癌症的发生、进展和治疗抗性。例如,拷贝数改变(CNA)水平与原发性前列腺癌复发或原发性乳腺癌、子宫内膜癌、肾透明细胞癌、甲状腺癌和结直肠癌等相关,拷贝数改变的检测和研究在肿瘤的治疗中发挥关键作用

CNVs相关基础知识参考:拷贝数变异测序CNV-seq与CNVs的评级

cnvkit参考文章https://cnvkit.readthedocs.io/en/stable/

CNVpytor参考本人文章CNVnator进阶工具CNVpytor的CNV检测最佳实践

2. CNVmap R包安装

# 安装remotes包
install.packages("remotes")

# github安装R包
remotes::install_github("BrandoPoggiali/CNVmap")

# 更新R包
# devtools::update("CNVmap")

3. 数据读取

以下代码R4.2实现。

读取CNVkit和CNVpytor检测CNVs生成的cnr和cns文件。

library(data.table)

cnr_data <- fread("sample.cnr", sep="\t")
cns_data <- fread("sample.cns", sep="\t")

4. 在单条染色体水平绘制CNA图

plot_single_chr(cnr_data, cns_data, chr = "chr6")

chr6

5. 绘制所有染色体中的CNA图

plot_all_chr(cnr_data, cns_data, only_autosomal = TRUE, chr_text_size=5)

所有染色体中的CNA图

6. 绘制染色体中一组感兴趣基因的位置

genes_list <- c("BRCA2","FLT1","NOL7", "TP53", "MYC", 
"NUPL1", "POMP", "HLA-A", "SOX21", "ARG1", "MYO6", "ELOVL5")

plot_single_chr(cnr_data, cns_data, chr = "chr6", 
genes = genes_list, gene_text_size = 3.3)


# 要添加显示缺失和扩增区域的染色体图标
plot_single_chr(cnr_data, cns_data, chr = "chr6", 
genes = genes_list, gene_text_size = 3.3, chr_picture = TRUE)

7. 添加一组感兴趣基因的位置

chr6 with genes

添加显示缺失和扩增区域的染色体图标

添加显示缺失和扩增区域的染色体图标

8. 单基因水平绘图

必须使用HGNC ID指定基因的名称(该函数根据Ensembl 107自动绘制规范转录本)。

plot_single_gene(cnr_data, cns_data, gene = "TP53")

单基因水平绘图

该功能允许绘制感兴趣基因的所有转录本和该区域中存在的调控元件的详细注释

调控元件的颜色遵循UCSC浏览器中的颜色(红色用于启动子,橙子用于远端增强子,黄色用于近端增强子,粉色用于DNA酶-H3 K4 me 3,蓝色用于仅CTCF)。

plot_single_gene(cnr_data, cns_data, 
gene = "TP53", all.transcripts = TRUE, regulatory.elements = TRUE)

单基因水平绘图

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-13 14:22:03       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-13 14:22:03       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-13 14:22:03       57 阅读
  4. Python语言-面向对象

    2024-07-13 14:22:03       68 阅读

热门阅读

  1. mysql修改数据库名称

    2024-07-13 14:22:03       17 阅读
  2. 为何服务器偏爱Linux?

    2024-07-13 14:22:03       23 阅读
  3. Scikit-learn使用和扩展之mlxtend(Stacking...)

    2024-07-13 14:22:03       22 阅读
  4. 京鸿鑫源元宇宙革新探索:开启未来零售新纪元

    2024-07-13 14:22:03       18 阅读
  5. 力扣1249.移除无效的括号

    2024-07-13 14:22:03       20 阅读
  6. 智能化监控与云原生趋势:运维团队的未来展望

    2024-07-13 14:22:03       23 阅读
  7. DevOps工具链整合:打造高效的自动化工作流

    2024-07-13 14:22:03       28 阅读
  8. qt 开发一个可以拖动的矩形

    2024-07-13 14:22:03       20 阅读
  9. springboot项目,指定某些接口不被拦截方法

    2024-07-13 14:22:03       14 阅读
  10. 无人机的工作原理

    2024-07-13 14:22:03       14 阅读