理解SNPs之间的联系或连锁不平衡(LD)模式对于单体型的选择具有重要作用,然而,对于密集的SNP图谱,随着区域内SNPs数量的增加,很难直接从复杂的VCF文件来看出SNPs间的连锁不平衡关系。LDheatmap就是这样一个能够可视化SNPs之间连锁不平衡关系的R包。

先举个小例子:

随机创建100个样本5个SNPs的基因型矩阵,并实现LD热图:

rm(list=ls())
set.seed(1)
gdat<-matrix(rbinom(n=500,size=2,prob=.5),ncol=5)
require(chopsticks)
gdat<-as(gdat,"snp.matrix")

LDheatmap(gdat,genetic.distances=c(0,1000,3000,4000,10000))

上图的5个SNPs的物理距离为10kb,每个SNP的位置通过genetic.distances参数控制。颜色越深表示LD显著。

下面使用这个包的内置数据:

data(CEUData)

这个包的内置数据分为两部分:
一个是SNPs在各个样本中的基因型信息:

另一个是所对应SNPs的物理距离:

作图:

MyHeatmap <- LDheatmap(CEUSNP, genetic.distances = CEUDist,color = grey.colors(20))

也可以翻转图形:

flippedHeatmap<-LDheatmap(MyHeatmap,flip=TRUE)

还可以高亮指定的区域,比如用红色高亮出第3个SNP到第5个SNP之间的区域:

MyHeatmap <- LDheatmap(CEUSNP, genetic.distances = CEUDist,color = grey.colors(20))
LDheatmap.highlight(MyHeatmap, i = 3, j = 5, col = "red")

对指定区域进行标注符号,比如用红色星号标注第4个和第7个SNP的LD:

MyHeatmap <- LDheatmap(CEUSNP, genetic.distances = CEUDist, color = grey.colors(20))
LDheatmap.marks(MyHeatmap,  4,  7,  gp=gpar(cex=2,col="red"),  pch = "*")

也可以自定义调色板重新上色:

rgb.palette <- colorRampPalette(rev(c("blue", "orange", "red")), space = "rgb")
LDheatmap(MyHeatmap, color=rgb.palette(18))

在物理距离图谱上标注SNP的名称:

MyHeatmap <- LDheatmap(CEUSNP, genetic.distances = CEUDist, color = grey.colors(20))
LDheatmap(MyHeatmap, SNP.name = c("rs2283092", "rs6979287"))

使用grid.edit修改图形的各项属性:

# 修改标题颜色
grid.edit(gPath("ldheatmap", "heatMap", "title"), gp = gpar(col = "red"))# 修改SNP标签大小
grid.edit(gPath("ldheatmap", "geneMap","SNPnames"), gp = gpar(cex=1.5))# 使用白线间隔LD色块:
grid.edit(gPath("ldheatmap", "heatMap", "heatmap"), gp = gpar(col = "white",lwd = 2))

grid.edit更详细的使用方法请参考官方文档。

作者:生信杂谈
链接:https://www.jianshu.com/p/0b92a3134a5c
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

SNP连锁不平衡图(LD)可视化R包LDheatmap的使用相关推荐

  1. 一个震撼的交互型3D可视化R包 - 可直接转ggplot2图为3D

    一个震撼的交互型3D可视化R包 - rayshader 虽然3D的plot见得比较多了,但是看见这样的R包,我的心还是砰了一下,这个简直不能再好看了! 关键是!!!敲黑板,这个R包超简单!!!对于刚学 ...

  2. Cicero:一个单细胞染色质可及性实验可视化R包

    本文可在http://xuzhougeng.top/免费阅读原文 Cicero是一个单细胞染色质可及性实验可视化R包.Cicero的主要功能就是使用单细胞染色质可及性数据通过分析共开放去预测基因组上顺 ...

  3. LDheatmap | SNP连锁不平衡图(LD)可视化,自己数据实现版!

    本文首发于"生信补给站",https://mp.weixin.qq.com/s/Gl6BChxSYbSHMo9oMpufPg 连锁不平衡图,用来可视化不同SNP之间的连锁程度,前同 ...

  4. karyoploteR: 基因组数据可视化 R 包

    karyoploteR,是一个适用于所有基因组数据(any data on any genome)非圆环布局(non-circular layouts)的可视化 R/Bioconductor 包.开发 ...

  5. 多组学分析及可视化R包

    文章来源:https://www.cnblogs.com/jessepeng/p/12597907.html 1. mixOmics 应该是在多组学领域知名度最高的一个R包,有专门的团队,做了十余年了 ...

  6. forestploter包,超赞的森林图绘制新R包

    森林图是以统计指标和统计分析方法为基础,用数值运算结果绘制出的图型.它在平面直角坐标系中,以一条垂直的无效线(横坐标刻度为1 或0) 为中心,用平行于横轴的多条线段描述了每个被纳入研究的效应量和可信区 ...

  7. R包circlize:柱状图用腻了?试试好看的弦状图

    文章目录 柱状图用腻了?试试好看的弦状图 弦图简介 数据准备 代码部分 载入R语言包 数据导入 颜色设定 画图 保存以上图片 Circlize包的所有参数(个性化设置) 笔者个性化弦图 作者简介 猜你 ...

  8. 包包的结构制图_科学网—R包circlize:柱状图用腻了?试试好看的弦状图 - 刘永鑫的博文...

    [TOC] 柱状图用腻了?试试好看的弦状图 作者:郑伟 西北农林科技大学 责编:刘永鑫 中科院遗传发育所 弦图简介 总体来讲,弦图是一种可视化微生物物种或基因相对丰度的方法.平时大多数时间我们看到的文 ...

  9. R:热图解释 | pheatmap包参数及详细聚类图绘制流程(一篇解决热图绘制问题)

    热图解释及pheatmap绘制热图 一.热图绘制原理 1.1 热图介绍 1.2 热图绘制准备--均一化 1.3 热图绘制方式 1.4 热图数据查看示例 二.pheatmap包简介 2.1 pheatm ...

最新文章

  1. SQL SERVER中的三种获得自增长ID的方法
  2. 使用TortoiseGit处理代码冲突
  3. html text报错,AFNetWorking 请求报错 text/html
  4. CentOS 初体验十七:Nexus发布仓库和引用
  5. windows强制复制不计算机,告诉你电脑不能复制粘贴怎么办
  6. 解决element-ui table show-summary合计行不显示问题
  7. 【Spring Cloud中文社区】正式启动
  8. mysql服务器设置其他电脑访问
  9. 德国人认真起来,自己都怕!
  10. c++ 多线程_python要点-多线程
  11. Office 365管理员指引 7 ——Lync 用户配置
  12. Citrix 桌面云 XenApp_XenDesktop_7.15 部署系列(九)客户端使用
  13. J2EE框架技术(SpringMVC) 知识点笔记(8)
  14. tcp服务器修改ip,修改本地连接的TCP/IP属性设置
  15. VMware 安装安卓虚拟机 一步一步的手把手教学
  16. JAVA基础Day01
  17. kafka SASL认证介绍及自定义SASL PLAIN认证功能
  18. STL中的for_each()函数
  19. PostgreSQL 用户和角色管理
  20. 一句话保险系列——几大险种混个脸熟

热门文章

  1. OSCP 学习:Kali Linux 基本命令
  2. 矩阵笔记2:矩阵分析(第三版)-史荣昌-第二章:λ-矩阵与矩阵的Jordan标准型
  3. suricata之linux编译
  4. Winform/C#入门编程之第二部分常用控件(三:组合框控件ComboBox)
  5. 【区块链DAPP】智能合约概述
  6. php pho 连接 MySQL_php与数据库的使用
  7. AB Test详细讲解
  8. homestead 安装mysql8_Laravel Homestead 8.x ——3数据库与配置文件
  9. java中bit操作常用技巧
  10. python属于前端_Django是前端还是后端?