跳到主要内容

基因组图:与R集成的基因组数据可视化

摘要

背景

生物研究涉及越来越多的不同高通量实验来表征感兴趣的样品。目前缺乏以通用方式可视化这些不同基因组数据集的方法。此外,基因组数据分析需要实验数据的集成可视化,以及不断变化的基因组注释和统计分析。

结果

我们开发了基因组图,作为统计编程环境R的附加软件包,以促进基因组数据集的集成可视化。基因组图使用生物反应器软件包对Ensembl执行在线注释查询,并将其转换为视图中的基因/转录结构网格图形包。这使得基因组注释可以与实验数据一起绘制。基因组图还可以用于使用相同的基因组坐标系在同一绘图中绘制与不同实验数据类型组合的自定义注释轨迹。

结论

基因组图是一个灵活且可扩展的软件包,可用于在统计编程环境R中可视化大量基因组数据集。

背景

计算生物学家正在处理越来越多的基因组数据集,包括微阵列(例如mRNA、ChIP、SNP、CGH和tiling-ChIP)和超高通量测序(例如mRNA-Seq和ChIP-Seq)数据。越来越多的生物研究涉及多种不同的高通量分析,以表征感兴趣的样品。需要新的、灵活的可视化方法来集成这些不同的数据源,并将它们与Ensembl等生物数据库的注释数据相结合[1].

基因组浏览器,如Ensembl基因组浏览器[1],NCBI Entrez地图查看器[2]和UCSC的Golden Path基因组浏览器[]可以上传和可视化实验数据,但绘图选项有限,不提供显示数据的数据分析功能,与用于进行统计分析的环境相去甚远。其他将基因组注释链接到实验数据的工具大多局限于特定的数据类型,或者依赖基因组浏览器的查看器进行可视化。统计查看器[4]例如,通过提供一个插件将数据上传到Ensembl Genome Browser,方便了链接和关联数据的解释。

X:地图[5]基因组注释数据库及其配套软件包外显子图实现实验数据和基因组注释的集成可视化,但它是外显子阵列特有的,需要本地安装Ensembl数据库。它目前不支持多个数据集的可视化,也不代表可选的拼接结构。

上述工具的主要缺点是无法通过编程访问,并且无法集成到需要批处理的分析管道中。此外,对于大型复杂数据集,所需的数据上传步骤无法很好地扩展。

统计编程环境Rhttp://www.r-project.org以及生物导体项目http://www.bioconductor.org提供了大量的方法和工具来分析和可视化数据。本文描述的软件包,基因组图,通过提供集成API来直接可视化来自各种源的数据,以此功能为基础构建。基因组图允许复杂的定制,以促进基因组数据集的更完整集成和表示。

实施

图形构成

基因组数据集对象

我们开发了基因组图作为统计编程环境R的附加包[6]. 它利用了S4系列类系统,并将每个基因组数据类型表示为一个特定的类。根类gd对象为显示可映射到基因组的数据提供基本功能(见表1). 所有特定于数据类型的类扩展gd对象并且相应的显示功能是建立在这个类之上的。例如通用数组代表基因表达微阵列和阵列CGH数据的类。此类采用强度矩阵作为输入,可以很容易地从中提取表达式集生物导体产生的物体阿菲包裹。另一个例子是基因区域代表给定基因组区域中的股特异性基因的类。定量基因组数据,例如来自arrayCGH和平铺阵列实验的数据,经常有相关的分段数据。分段数据由细分类。存在表示表意符号、基因组轴和图例的其他类。可以使用矩形覆盖类。一次gd对象它们可以使用主绘图功能在一个绘图中可视化,gd绘图.

表1代表可提取基因组数据集的类别概述

表征细胞状态的新技术发展可能需要新的表示法。表示这些新数据类型的类可以轻松添加到基因组图如果定义了相应的绘图方法,则可以使用gd绘图以及来自现有类的数据。

使用biomRt从Ensembl检索基因组注释

基因组图依赖于生物反应器包装[7]使用BioMart web服务从Ensembl在线检索基因组注释信息[8]. 注释信息可通过生物反应器范围从基因注释、转录亚型到SNP数据。可以从Ensembl的最新版本或存档版本中检索此信息。通过使用生物反应器,无需安装Ensembl的本地数据库,极大地简化了软件安装过程。

自定义基因组注释轨迹

集合包含有限数量的真核生物基因组注释。任何自定义基因组注释都可以在中可视化基因组图通过构造注释轨道类。例如,GFF文件中编码的基因组注释可以轻松用于创建自定义注释轨道用于可视化的对象。要使用注释轨道需要给出类、区域的开始和结束位置,以及如何对这些区域进行分组。

用户数据到基因组坐标的映射

基因组图是一个可视化工具,因此不提供用户提供的数据到基因组的映射。类的实例gd对象将负责确保这些坐标与相关基因组注释匹配的用户提供的基因组坐标作为输入。为了获得数据的染色体坐标,用户可以依赖生成数据的平台提供的注释,也可以依赖独立创建的基因组映射。

结果

示例I:arrayCGH和外显子阵列数据

在第一个例子中,我们说明了不同的基因组数据集如何在一个集成的基因组图图解的。我们使用arrayCGH和Affymetrix外显子阵列数据,并将这些数据与Ensembl的基因组注释一起绘制。

我们首先加载基因组图包及其一个示例数据集。该数据集包含拷贝数数据和分段拷贝数数据,以及小基因组区域的外显子阵列数据。加载数据后gd对象为每个数据类型创建,即细分包含拷贝号段的对象通用数组对象包含原始副本号数据象形字表示我们正在绘制的相关染色体的对象通用数组包含外显子数组数据的对象,以及基因组轴基因组坐标轴的对象。

>库(基因组图)

>数据('exampleData',package='GenomeGraphs')

>seg=makeSegmentation(值=段,

start=segStart,end=segEnd,dp=DisplayPars(颜色=“躲避蓝2”,lwd=2,lty=“虚线”)

>copyNumber=makeGenericArray(强度=cn,probeStart=probeStart,

分段=seg,dp=DisplayPars(大小=3,颜色='seagreen',类型=“dot”)

>象形文字=make象形文字(染色体=3)

>expression=makeGenericArray(强度=强度,probeStart=exonProbePos,

dp=DisplayPars(color='darkred',type='point')

>基因组轴=生成基因组轴(add53=真,add35=真)

在下一步中,使用生物反应器包裹。我们首先连接到Ensemb BioMart数据库并选择人类(hsapiens公司)数据集。然后,我们检索我们想要可视化的区域的正向和反向链上的基因结构。

>最小基数=180292097

>最大基数=180492096

>mart=useMart('ensembl',dataset='hsapiens_gene_ensembl')

>genesplus=makeGeneRegion(start=minbase,end=maxbase,strand='+',chromosome='3',biomert=mart)

>genesmin=makeGeneRegion(start=minbase,end=maxbase,strand='-',chromosome='3',biomart=mart)

最后一步gd绘图调用函数来绘制的实例gd对象上面创建的。这些对象被赋予gd绘图作为列表,列表中的顺序将决定从上到下的打印顺序。最小和最大碱基位置也作为参数给出,以限制对该特定基因组区域的可视化。此示例生成的图如图所示1.

图1
图1

ArrayCGH和外显子阵列数据图中的第一个轨迹显示了人类3号染色体的象形文字。红色标记突出显示绘制的基因组区域。第二个轨迹显示外显子阵列数据,其中每个数据点对应于测量外显子表达水平的探针。第三条轨迹以绿色显示副本编号数据,以蓝色虚线显示分段副本编号数据。请注意,在拷贝数和外显子阵列轨迹中都可以看到扩增,这表明扩增事件导致该区域基因的高表达水平。底部轨迹显示来自Ensembl的基因注释数据。

>gdPlot(列表(ideogram,expression,copyNumber,genesplus,genoAxis,genesmin),minBase=minBase,maxBase=maxBase)

示例二:转录亚型和外显子阵列数据

在第二个例子中,我们展示了来自Affymetrix基因芯片的探针级外显子阵列数据®人类Exon 1.0 ST平台(数据可从http://www.affmetrix.com)可以绘制Affymetrix的基因模型以及Ensembl的基因和转录注释。外显子阵列的数据没有绘制在探针的准确染色体位置,以便清楚地显示选择性剪接事件。大多数外显子在人类外显子1.0 ST平台上由四个探针表示。这四个探针的位置在数据图中等距分布。每个外显子由一条垂直线隔开,外显子通过连接线与其基因组位置相连。这种可视化可以很容易地将外显子阵列数据中观察到的替代外显子用法与Ensembl中已知的替代转录亚型联系起来(图2). 图中突出显示的区域显示了样本中未表达的外显子。为了生成这个图,我们首先创建gd对象即:标题,ExonArray公司,基因,成绩单、和图例物体。此外,我们使用注释轨道类。

图2
图2

转录亚型和外显子阵列数据探针水平外显子阵列数据绘制在顶部图形中。外显子阵列的数据故意不绘制在探针的准确染色体位置上,以便清楚地显示选择性剪接事件。顶部轨迹中的每一行代表不同的样本。Affymetrix基因芯片上每个外显子通常有四个探针®人类外显子1.0 ST平台,垂直灰色线将这四个属于同一外显子的探针组合在一起。蓝色连接线将这些外显子映射到Affymetrix(绿色)和Ensembl(橙色)定义的基因模型。该基因已知的转录亚型以深蓝色绘制。图中高亮显示的区域矩形覆盖对象显示样本中未表达的外显子。可以看出,这是一个已知的选择性剪接外显子,由Ensembl注释。

>数据('unrData',package='GenomeGraphs')

>title=makeTitle(text='ENSG0000009307',color='darkred')

>col=colorRampPalette(c('firebrick2','dodgerblue2'))(长度(unrData[1,]))

>exon=makeExonArray(intensity=unrData,probeStart=unrPositions[,3],probeEnd=unrPlacess[,4],

probeId=as.character(unrPositions[,1),nProbes=unrNProbes,

dp=DisplayPars(color=col,mapColor='dodgerblue2'),displayProbesets=FALSE)

>affyModel<-makeAnnotationTrack(start=unrPositions[,3],end=unrLocations[,4],

feature=“gene_model”,group=“ENSG0000009307”,

dp=显示Pars(gene_model=“深蓝色”)

>gene=makeGene(id='ENSG00000009307',biomart=mart)

>transcript=makeTranscript(id='ENSG0000009307',biomart=mart)

>legend=makeLegend(text=c('afyModel','Ensembl Gene','Ensembl Transcript'),

fill=c(‘深绿色’,‘范围’,‘棕色蓝色’),cex=0.5)

在第二步中,我们使用矩形覆盖类创建高亮显示的区域,然后gd绘图生成集成图的函数。

>rOverlay=生成矩形覆盖(开始=115085100,结束=115086500,区域=c(3,5),

dp=显示Pars(alpha=.2,fill=“olivedrab1”)

>gdPlot(列表(标题、外显子、affyModel、基因、转录本、图例),minBase=115061061,maxBase=115102147,overlay=rOverlay)

第二个示例中生成的图如图所示2.

示例三:短读排序和平铺阵列数据

在最后一个例子中,我们展示了如何整合复杂多样的数据集,以便于联合分析,并通过展示酵母上各种已发布数据集的数据得出生物学结论。首先,我们构造一个列表,其中每个gd对象表示注释或公共可用数据集。我们绘制了来自Ensembl的数据,这是一个Illumina测序数据集[9],Affymetrix平铺阵列数据[10],核小体位置数据[11]和7个相关物种的保护数据[12].

>数据(“seqDataEx”,package=“GenomeGraphs”)

>str=seqDataEx$david[,“strand”]==1

>biomert=useMart(“集成”,“scerevisiae_gene_ensembl”)

>pList=列表(“-”=makeGeneRegion(染色体=“IV”,开始=1300000,结束=1310000,

strand=“-”,biomart=生物标记,

dp=显示参数(plotId=真,idRotation=0,cex=.5)),

makeGenomeAxis(dp=DisplayPars(byValue=1e3,size=3)),

“+”=makeGeneRegion(染色体=“IV”,开始=1300000,结束=1310000,

strand=“+”,biomart=biomart,

dp=显示参数(plotId=真,idRotation=0,cex=.5)),

“Nagalakshmi”=makeBaseTrack(base=seqDataEx$snyder[,“location”],value=seqData Ex$snyder[,“counts”]),

dp=显示Par(lwd=.3,color=“深蓝色”,ylim=c(0300)),

“David+”=makeGenericArray(probeStart=seqDataEx$David[str,“location”],

强度=seqDataEx$david[str,“expr”,下降=FALSE],

dp=显示Pars(pointSize=.5)),

“David-”=makeGenericArray(probeStart=seqDataEx$David[!str,“location”],

intensity=seqDataEx$david[!str,“expr”,drop=FALSE],

dp=显示Pars(color=“深绿色”,pointSize=.5)),

“Lee”=makeBaseTrack(base=seqDataEx$nislow[,“location”],

value=seqDataEx$nislow[,“evalue”],dp=DisplayPars(color=“grey”,lwd=.25)),

“保护”=makeBaseTrack(base=seqDataEx$Conservation[,“location”],

value=seqDataEx$conservation[,“score”],

dp=DisplayPars(color=“gold4”,lwd=.25))

构建了要绘制的元素列表后,我们现在使用矩形覆盖类,以突出显示感兴趣的区域。最后,我们使用gd绘图。虽然配置和设计初始绘图可能看起来很费力,但一旦我们有了这个基本结构,就可以轻松地为所有感兴趣的区域生成绘图。

>rOverlay=makeRectangleOverlay(开始=1302105,结束=1302190,区域=c(4,8),dp=DisplayPars(alpha=.2))

>gdPlot(pList,minBase=1301500,maxBase=1302500,overlay=rOverlay)

第三个示例中生成的图如图所示.

图3
图3

短读排序和平铺阵列数据绘制的数据为Nagalakshmi等人的Illumina测序数据[9],拼接来自David等人的阵列数据[10],Lee等人的核小体数据[11]以及来自Siepel等人[12]. 半透明框突出显示了SGD中可能的注释错误,正如在多个单独的数据集中出现的转录本所示。此外,保育轨迹数据证明了更长基因的可能性。

结论

基因组图是一个多功能和可扩展的R可视化软件包,非常适合创建各种实验数据集和基因组注释信息的集成显示。通过使用生物反应器包,注释信息直接从Ensembl检索,无需在本地安装和维护注释数据库。也可以使用注释轨道类。最后,基因组图为用户提供与R的紧密集成,从而可以立即访问大量统计方法。

该软件包附带一个小插曲,它是一个演示如何使用该软件包的可执行文档。本文中描述的示例也包含在vignette中,可以在安装包后执行。在小插曲中还展示了更复杂的功能。该软件包的未来版本将在绘制参数和绘制新功能方面具有更大的灵活性,例如可视化由Ensembl注释的SNP信息和堆叠排序读取表示。

可用性和要求

基因组图是一个开源软件包,位于艺术-2.0并已为生物导体项目做出贡献。软件和源代码可从下载http://www.bioconductor.org本文件使用R-2.8.0和基因组图版本1.2.0可从以下URL获得:http://bioconductor.org/packages/2.3/bioc/html/GenomeGraphs.html该软件包已经在OS X、Windows和各种Linux系统上测试和运行。基因组图取决于以下软件包XML格式,RCurl(RCurl)、和生物反应器,可以从Bioconductor下载或使用http://www.bioconductor.org/biocLite.R脚本。The versatility of基因组图可视化依赖于强大的R绘图软件包网格[13]. 每个gd对象以个人为单位绘制查看端口来自网格包裹。网格通常与R(右).

工具书类

  1. Hubbard T、Aken B、Ayling S、Ballester B、Beal K、Bragin E、Brent S、Chen Y、Clapham P、Clarke L、Coates G、Fairley S、Fitzgerald S、Fernandez Banet J、Gordon L、Graf S、Haider S、Hammond M、Holland R、Howe K、Jenkinson A、Johnson N、Kahari A、Keefe D、Keenan S、Kinsella R、Kokocinski F、Kulesha E、Lawson D、Longden I等人:Ensembl 2009。核酸研究2009,(37数据库):D690-697。10.1093/nar/gkn828

    谷歌学者 

  2. Wheeler D、Barrett T、Benson D、Bryant S、Canese K、Chetvernin V、Church D、Dicuccio M、Edgar R、Federhen S、Feolo M、Geer L、Helmberg W、Kapustin Y、Khovayko O、Landsman D、Lipman D、Madden T、Maglott D、Miller V、Ostell J、Pruitt K、Schuler G、Shumway M、Sequeira E、Sherry S、Sirotkin K、Souvorov A、Starchenko G、Tatusov R、,等:国家生物技术信息中心的数据库资源。核酸研究2008,(36数据库):D780-D786。

    谷歌学者 

  3. Karolchik D、Kuhn R、Baertsch R、Barber G、Clawson H、Diekhans M、Giardine B、Harte R、Hinrichs A、Hsu F、Kober K、Miller W、Pedersen J、Pohl A、Raney B、Rhead B、Rosenbloom K、Smith K、Stanke M、Thakkapallayil A、Trumbower H、Wang T、Zweig A、Hausler D、Kent W:UCSC基因组浏览器数据库:2008年更新。核酸研究2008,(36数据库):D773-D779。

    谷歌学者 

  4. Stenger J,Xu H,Haynes C,Hauser E,Pericak-Vance M,Goldschmidt-Clermont P,Vance J:统计查看器:一种工具,用于上传和整合连锁和关联数据,如Ensembl基因组浏览器中显示的图。BMC生物信息学2005, 6: 95. 10.1186/1471-2105-6-95

    第条 公共医学中心 公共医学 谷歌学者 

  5. Yates T,Okoniewski M,Miller C:X:地图:Affymetrix外显子阵列分析的基因组结构注释和可视化。核酸研究2008,(36数据库):D780-D786。

    谷歌学者 

  6. R开发核心团队:R: 统计计算语言与环境.R统计计算基金会,奥地利维也纳;2008. [网址:http://www.R-project.org]

    谷歌学者 

  7. Durinck S、Moreau Y、Kasprzyk A、Davis S、Moor BD、Brazma A、Huber W:BioMart和Bioconductor:生物数据库和微阵列数据分析之间的强大链接。生物信息学2005, 21(16):3439–3440. 10.1093/生物信息学/bti525

    第条 中国科学院 公共医学 谷歌学者 

  8. Kasprzyk A、Keefe D、Smedley D、London D、Spooner W、Melsopp C、Hammond M、Rocca-Serra P、Cox T、Birney E:EnsMart:一个用于快速灵活访问生物数据的通用系统。基因组研究2004, 14(1):160–169. 10.1101/gr.1645104

    第条 公共医学中心 中国科学院 公共医学 谷歌学者 

  9. Nagalakshmi U,Wang Z,Waern K,Shou C,Raha D,Gerstein M,Snyder M:通过RNA测序确定的酵母基因组转录图谱。科学类2008, 320(5881):1344–1349. 10.1126/科学.1158441

    第条 公共医学中心 中国科学院 公共医学 谷歌学者 

  10. David L、Huber W、Granovskaia M、Toedling J、Palm CJ、Bofkin L、Jones T、Davis RW、Steinmetz LM:酵母基因组中高分辨率转录图。《美国科学院院刊》2006, 103(14):5320–5325. 10.1073/pnas.0601091103

    第条 公共医学中心 中国科学院 公共医学 谷歌学者 

  11. Lee W、Tillo D、Bray N、Morse RH、Davis RW、Hughes TR、Nislow C:酵母核小体占有率的高分辨率图谱。自然基因2007年,39(10):1235–1244。2038/ng2117年10月10日

    第条 中国科学院 公共医学 谷歌学者 

  12. Siepel A、Bejerano G、Pedersen JS、Hinrichs AS、Hou M、Rosenbloom K、Clawson H、Spieth J、Hillier LW、Richards S、Weinstock GM、Wilson RK、Gibbs RA、Kent WJ、Miller W、Haussler D:脊椎动物、昆虫、蠕虫和酵母基因组中的进化保守元素。基因组研究2005, 15(8):1034–1050. 10.1101/克3715005

    第条 公共医学中心 中国科学院 公共医学 谷歌学者 

  13. 默里尔P:R图形博卡拉顿:CRC出版社;2005

     谷歌学者 

下载参考资料

致谢

我们感谢伊丽莎白·普多姆(Elizabeth Purdom)和马克·罗宾逊(Mark Robinson)对早期版本的软件进行了测试,并贡献了ExonArray示例数据集。我们感谢匿名评审员为改进这项工作提出的意见和建议。资金由TCGA项目的U54 CA 112970拨款提供网址:http://cancergenes.nih.gov/.

作者信息

作者和附属机构

作者

通讯作者

与的通信斯特芬·杜林克詹姆斯·布拉德.

其他信息

作者的贡献

SD和JB开发了软件包。PS和SD为开发该软件提供了科学建议和资源。

Steffen Durinck和James Bullard为这项工作做出了同样的贡献。

作者提交的原始图像文件

下面是作者提交的原始图像文件的链接。

图1的作者原始文件

图2的作者原始文件

图3的作者原始文件

权利和权限

本文由BioMed Central Ltd.授权发布。这是一篇根据知识共享署名许可条款发布的开放存取文章(http://creativecommons.org/licenses/by/2.0)它允许在任何介质中不受限制地使用、分发和复制原始作品,前提是正确引用了原始作品。

转载和许可

关于本文

引用这篇文章

Durinck,S.、Bullard,J.、Spellman,P.T。等。基因组图:与R。BMC生物信息学 10, 2 (2009). https://doi.org/10.1186/1471-2105-10-2

下载引文

  • 收到:

  • 认可的:

  • 出版:

  • 内政部:https://doi.org/10.1186/1471-2105-10-2

关键词