专栏名称: 生信宝典
生物信息分析入门、晋级和经验分享。Linux、R、Python学习教程;高通量测序数据分析学习教程;生信软件安装教程。所有内容均为原创分享,致力于从基础学习到提高整个过程。
目录
相关文章推荐
重庆日报  ·  创意视频|新春第一会 绘出新重庆新篇章 ·  18 小时前  
重庆日报  ·  创意视频|新春第一会 绘出新重庆新篇章 ·  18 小时前  
重庆市文化和旅游发展委员会  ·  重庆春节哪里人气最旺?这些地方排名前5→ ·  3 天前  
重庆市文化和旅游发展委员会  ·  重庆春节哪里人气最旺?这些地方排名前5→ ·  3 天前  
第1眼新闻  ·  启动黄色预警!洪崖洞景区发布最新公告 ·  4 天前  
第1眼新闻  ·  启动黄色预警!洪崖洞景区发布最新公告 ·  4 天前  
51好读  ›  专栏  ›  生信宝典

iMeta | 河南农业大学姚文组开发绘制Circos图的交互式Web应用程序

生信宝典  · 公众号  ·  · 2024-08-13 21:00

正文

点击蓝字 关注我们

shinyCircos‐V2.0: 易用性提高和功能增强的Circos图绘制工具

iMeta主页:http://www.imeta.science

方法 论文

期刊: iMeta (IF 23.7)
文章被引(截至2024年8月12日): 26

原文链接DOI: https://doi.org/10.1002/imt2.109

2023年5月8日,河南农业大学姚文团队在 iMeta 在线发表了题为 “ shinyCircos-V2.0: Leveraging the creation of Circos plot with enhanced usability and advanced features ” 的文章。

本研究开发的shinyCircos-V2.0是shinyCircos的升级版本,包括了一个新的用户界面,增强了其易用性,并提供许多用于创建高级Circos图形的新功能。

第一作者: 王亚洲、贾利华

通讯作者:姚文 ( [email protected] )

合作作者: 田格、董依涵、张潇、周正富、骆翔、李阳

主要单位:河南农业大学生命科学学院、河南省农业科学院作物分子育种研究院、河南大学农学院

亮   点

开发了一个名为shinyCircos‐V2.0的网络应用程序,用于创建Circos图。

shinyCircos-V2.0是shinyCircos的升级版本,具有更友好的图形用户界面和许多新功能。

提供了详细的教程和示例输入数据集,以提高shinyCircos‐V2.0的可用性。

摘  要

我们之前开发了shinyCircos,一个用于创建Circos图的Web应用程序,该程序因其图形用户界面和易用性而得到广泛认可。在本研究中,我们开发了shinyCircos-V2.0,这是shinyCircos的升级版本,包括了一个新的用户界面,增强了其易用性,并提供许多用于创建高级Circos图形的新功能。为了帮助用户快速上手shinyCircos-V2.0,我们提供了详细的教程和示例输入数据集。该应用程序可在线访问,网址为https://venyao.xyz/shinyCircos/和https://asiawang.shinyapps.io/shinyCircos/,也可以使用存放在GitHub中的源代码安装在本地使用(https://github.com/YaoLab-Bioinfo/shinyCircos-V2.0)。

视频解读

Bilibili:https://www.bilibili.com/video/BV1vP41197Gk/

Youtube:https://youtu.be/7dUneDjIJFo

中文翻译、PPT、中/英文视频解读等扩展资料下载

请访问期刊官网:http://www.imeta.science/

全文解读

引  言

Circos是由Krzywinski等人于2009年开发的一款用于比较基因组学研究的可视化工具,已成为新测序基因组和其他基因组研究中不可或缺的工具。Circos能够以环形格式展示各种类型的基因组数据,包括单核苷酸多态性(SNP)、插入缺失(InDel)、基因、DNA甲基化等。自开发以来,Circos图经常被用于展示与同一基因组区域相关的不同基因组特征的相似性或差异性。一个典型的Circos图由多个同心圆轨道组成,每个轨道代表基因组数据的不同方面(图1)。每个轨道被分为多个扇区,这些扇区以圆形方式排列,代表不同的基因组区域。在每个扇区内,基因组数据可以表示为单元格,这些单元格是代表单个区域或特征的矩形。Circos图的最外层轨道通常代表染色体图谱或核型,显示染色体的物理位置。在最内层轨道内,成对的基因组区域可以通过弯曲的线条连接,这些线条被称为连接线(links)。

图 1. shinyCircos-V2.0应用程序主页展示的Circos图的基本结构

主面板顶部的文本提供了关于Circos图形和shinyCircos的简明概述。主面板底部的两个图片展示了一个典型的Circos图的基本结构。

Circos最初是使用Perl编程语言创建的一个命令行工具。因此,对于没有编程经验的人来说,安装和配置这个工具是一个很大的挑战。尽管如此,Circos工具在基因组数据可视化方面迅速赢得了广泛的认可。这种受欢迎程度推动了其他类似工具的开发,包括BioCircos.js、Circleator、circlize、CIRCUS、interacCircos、NG-Circos和Galactic Circos。这些工具使用了各种编程语言创建Circos图。其中,使用R编程语言开发的circlize因其清晰的语法和强大的功能而受到用户的广泛认可。在R强大绘图系统的支持下,使用circlize生成的Circos图形效果十分漂亮。

为了提高绘制Circos 图的效率,许多带有图形界面的工具被相继开发出来,包括 J-Circos、shinyCircos和 TBtools 中的高级 Circos 绘图模块。这些工具显著促进了在各个领域,包括生物学研究中使用Circos图进行数据可视化的应用。在这些工具中,shinyCircos (以下记为shinyCircos-V1) 是一款使用 R/Shiny 框架和 circlize 绘图引擎开发的交互式 Web 应用程序。据我们所知,shinyCircos 是唯一一个可在线绘制 Circos 图并可安装在本地计算机上的 Web 应用程序。

自发布以来,shinyCircos-V1 接收到了大量用户反馈,包括错误报告和新功能请求,其中大部分已得到解决。在本文中,我们主要介绍 shinyCircos-V2.0,这是 shinyCircos 的一个重要升级版本。其图形用户界面已完全重新设计,以提供更好的用户体验。此外,shinyCircos-V2.0 打破了最多输入12个数据集的限制,这是 shinyCircos-V1 中的一个不够好的地方。此外,我们在 shinyCircos-V2.0 中实现了多个高级功能,如颜色图例、轨道索引的文本标签、坐标轴标签和刻度。与shinyCircos-V1相比,shinyCircos-V2.0 在可用性和高级功能方面有很大改进。

结  果

改进的shinyCircos-V2.0图形界面以提升用户体验

在shinyCircos-V2.0中,我们使用R包bs4Dash来开发更友好的图形用户界面,极大地提高了用户体验。bs4Dash是R包shinydashboard的更新版本,它提供了使用Bootstrap 4为R/Shiny应用程序开发现代仪表盘样式的模板。为了方便创建Circos图,我们设计了多个功能页面,即“Data Upload”、“Circos Parameters”和“Circos Plot”页面,将绘图功能组织成不同的步骤并按顺序排列(图2)。在“Data Upload”页面上,用户可以上传一个或多个输入数据集,或选择加载一个示例输入数据集。接下来,输入数据集会在“Circos Parameters”页面上的不同部分中显示。在设置了每个输入数据集的适当参数后,用户可以提交所有的输入数据集及其参数来创建Circos图(图2)。

图 2. 在shinyCircos‐V2.0应用程序的不同页面上实现的主要功能

每个页面的标题展示在其顶部。

我们还设计了几个额外的页面来补充shinyCircos-V2.0的主要功能。这些页面提供了有关使用shinyCircos-V2.0的教程。在“Gallery”页面中展示了使用shinyCircos-V2.0创建的30个示例Circos图,以及它们对应的输入数据集(图2)。这有助于用户理解在使用shinyCircos-V2.0时输入数据集的正确格式。在“Help”页面上提供了详细的教程,包括简体中文和英文版本的教程。此外,“About”页面列出了使用shinyCircos-V2.0依赖的R包。用户可以在“Contact”页面上找到相关的联系信息,用于错误报告和功能请求。

在shinyCircos-V1中,所有用于数据上传的小部件都被打包到“Data Upload”页面的侧边栏面板中。当用户上传多个输入数据集时,每个输入数据集的前几行都会显示在“Data Upload”页面的主面板中,导致“Data Upload”页面过长。类似地,每个输入数据集的所有参数都被打包到shinyCircos-V1的“Circos Visualization”页面的侧边栏面板中,如果上传多个输入数据集,调整参数就会变得很繁琐。此外,在shinyCircos-V1中,每个输入数据集都必须单独上传。相比之下,shinyCircos-V2.0允许同时上传多个输入数据集,并且在“Circos Parameters”页面上可以在弹出窗口中查看每个输入数据集的完整内容(图2)。每个输入数据集的绘图参数都被放置在“Circos Parameters”页面的单独弹出窗口中。

在ShinyCircos-V2.0中,我们增加了一些额外的弹出窗口来增强交互性。当用户输入错误的输入数据集或参数时,这些弹出窗口会被触发,提供提示信息,帮助用户正确使用ShinyCircos-V2.0。此外,我们还加入了带有提示信息的弹出窗口,以帮助用户使用ShinyCircos-V2.0创建Circos图。总的来说,shinyCircos-V2.0具有改进的用户界面,比ShinyCircos-V1更整洁更友好。

shinyCircos-V2.0的功能被无缝集成在连续的网页中,可用于轻松创建Circos图

我们已将shinyCircos-V2.0部署为Web应用程序,供用户通过以下链接访问:https://venyao.xyz/shinyCircos/和https://asiawan.shinyapps.io/shinyCircos/。对于喜欢离线使用的用户,也可以在本地计算机安装shinyircos‐V2.0。请注意,shinyCircos‐V1仍托管在我们的服务器上,网址为https://venyao.xyz/shinyCircos-V1/。

利用ShinyCircos-V2.0进行操作的第一步是使用“Data Upload”页面上提供的小部件上传一个或多个输入数据集(图3)。与ShinyCircos-V1最多可上传12个输入数据集不同,ShinyCircos-V2.0原则上允许上传任意数量的输入数据集。所有用于创建Circos图的输入数据集可以同时或分别上传。创建Circos图所需的一个不能缺少的输入数据集是染色体数据集,用于定义基因组中每个chromosome/scaffold的长度。shinyCircos-V2.0提供了20个染色体数据集,包括人类、小鼠、拟南芥、水稻等模式生物。其他用于绘制Circos图的输入数据集可以被分为轨道数据(Track data),其将与所有chromosome/scaffold一起绘制;标签数据(Label data),用于用文本标签标记不同Track中的元素;以及连接数据(Links data),用于在基因组区域之间建立连接线。在将输入数据集提交到shinyCircos-V2.0的服务器端之前,用户应使用“Data Upload”页面上提供的小部件将所有输入数据集分配到适当的数据分组中。此外,用户可以通过添加新数据集或删除已上传的数据集来更新Circos图的输入数据集,这对于更新已创建的Circos图而无需重新上传所有输入数据集非常有用。需要注意的是,一旦更新了一个或多个输入数据集,一定要保存并重新提交所有输入数据集。

图 3. 使用shinyCircos‐V2.0创建Circos图的基本步骤说明

顶部面板显示了四个输入数据集的前两行和列标题。中间面板展示了用于为每个输入数据集设置参数的小部件。对于每个输入数据集,可以通过点击与输入数据集相同行中的齿轮符号来打开弹出窗口,从而访问其他小部件。底部面板展示了使用四个输入数据集和设置的参数创建的Circos图。

在提交所有输入数据集后,用户将被引导到“Circos Parameters”页面,该页面分为四个区域,分别显示染色体数据、轨道数据、标签数据和链接数据(图3)。每个输入数据集在单独的一行上显示,包括文件名、查看内容的小部件以及设置绘图参数的其他小部件。对于每个轨道数据,必须从10个选项中选择适当的绘图类型,包括点、线、条形、离散值矩形、渐进值矩形、离散值热图、渐进值热图、染色体表型、堆叠点和堆叠线。大多数默认情况下,所有类型的输入数据集的其他参数都可以与shinyCircos-V2.0分配的默认值无缝协作。然而,在"Circos Parameters"页面中也包括许多绘图参数,可以调整来装饰Circos图,如每个轨道的高度、相邻轨道/扇区之间的距离、不同条形图/线条的颜色、每个轨道的背景颜色和文本标签的字体大小。对于散点图,可以使用shinyCircos-V2.0中的参数调整所有点的颜色、大小和形状。用户必须在"Circos Parameters"页面上提交所有输入数据集和相应的绘图参数,才能创建所需的Circos图。

shinyCircos-V2.0生成的Circos图最终显示在“Circos图”页面上(图3)。用户可以以高质量的PDF或SVG格式下载Circos图,这些格式可以轻松转换为其他图像格式,如JPEG、PNG、TIFF等。此外,在“Circos Plot”页面上的“高级选项”小部件下还有四个高级绘图参数可用。这些参数使用户能够显示图例、轨道索引标签、对Circos图进行缩放,并突出显示图中的特定基因组区域。为了提高shinyCircos-V2.0的可扩展性,我们在“Circos图”页面上提供了R脚本供用户下载和重现Circos图。

shinyCircos-V2.0中实现的用于创建高级Circos图的新功能

为了进一步增强 shinyCircos 的功能,我们在 shinyCircos-V2.0 中实现了几个高级功能。例如,shinyCircos-V2.0 现在支持缩放创建的 Circos 图。通过调整字体大小和颜色,可以轻松自定义 Label 数据添加的文本标签,这有助于区分相应轨道中的不同元素组。此外,shinyCircos-V2.0 允许在使用 track 数据创建的柱状图、点图和线图上添加指示输入数据的最大值和最小值的轴标签和刻度线(图4)。这个功能对于比较显示在不同轨道中的输入数据集非常有用。不同轨道的索引对于解释 Circos 图也很重要,在传统的 Circos 工具创建的 Circos 图中通常需要手动添加。在 shinyCircos-V2.0 中,用户现在可以轻松地添加文本标签来指示所有轨道的索引(图4)。

图4. shinyCircos‐V2.0的高级功能展示

shinyCircos-V2.0 的四个新的高级特性通过红色框标出。用于调整这些高级特性参数的相应小部件位于 Circos 图周围。

热图是 Circos 图中常见的一种图形,可用于展示多个基因在不同发育阶段/组织中的表达模式。然而,在 shinyCircos-V1 中,只能使用数值型输入数据生成热图。相比之下,shinyCircos-V2.0 支持使用数值型和分组型输入数据创建热图。此外,尽管颜色图例在热图中非常重要,但大多数现有的 Circos 可视化软件提供的支持不足。为了克服这个限制,我们利用 ComplexHeatmap 包将颜色图例纳入 shinyCircos-V2.0。颜色图例可以方便地放置在 Circos 图的底部或右侧,适用于多种图形类型,例如“rect-discrete”、“rect-gradual”、“heatmap-discrete”、“heatmap-gradual”、“stack-point”、“stack-line”和链接(图4)。

在 Circos 图中,连接线(Links)经常用于表示基因组区域之间的相互作用。例如,基因组易位可以通过 Circos 图中的连接线表示。然而,当连接一个非常大的基因组中的小基因组区域时,连接线通常很难辨认。这对于处理非常大的基因组(如小麦基因组)的用户来说可能是令人沮丧的。为了解决这个问题,circlize R软件包支持使用每个区域的中间点绘制连接线,而不考虑区域大小。我们已将这个功能已经纳入了shinyCircos-V2.0中。此外,我们还添加了将不同组的连接线分配颜色的新功能。

用于促进 shinyCircos-V2.0 使用的教程和示例性输入数据集

shinyCircos-V2.0 是一个直观且交互式的网络应用程序,旨在为用户提供友好的使用体验。为了进一步增强用户体验,我们提供了一套全面的教程和示例数据集,使用户能够轻松生成和自定义 Circos 图,以满足他们的研究需求。

我们在 shinyCircos-V2.0 的“Data Upload”页面提供了十组示例输入数据,用户可以通过单击鼠标将其加载并提交给shinyCircos-V2.0。对于每个示例数据集,每个输入数据的分组、轨道索引、绘图类型以及每个输入数据的参数都被预先配置好了。用户可以在“Circos Parameters”页面上查看这些预配置的参数。提交示例数据集和参数之后将在“Circos Plot”页面上生成一个Circos图。这十组示例输入数据生成了shinyCircos-V2.0 “Gallery”页面上展示的前十个Circos图。每个Circos图的输入数据可以在“Data Upload”页面上查看和下载,也可以从“Gallery”页面上下载。这个功能对于新用户来说特别方便,可以帮助他们快速入门shinyCircos-V2.0。

在“Gallery”页面上,一共展示了30个Circos图。点击“Gallery”页面上相应的图像,即可访问每个Circos图的PDF文件。每个Circos图的输入数据集可以通过各自下方的下载按钮来下载。这30个Circos图涵盖了使用shinyCircos-V2.0创建Circos图的所有方面和功能,对于用户准备输入数据集和探索shinyCircos-V2.0的功能非常有帮助。

在shinyCircos-V2.0的“Help”页面上,我们提供了详细的教程,包括简体中文和英文版本。此外,我们还提供了目录,以帮助用户轻松浏览教程的不同部分。教程包括shinyCircos-V2.0的介绍以及一个典型Circos图的组成要素,shinyCircos-V2.0所需的每个输入数据集的详细格式,使用shinyCircos-V2.0创建Circos图表的详细步骤,以及shinyCircos-V2.0实现的绘图参数和高级功能的说明。此外,帮助教程还存放在GitBook中(https://yaolabbioinfo.gitbook.io/shinycircos/),用于浏览和共享。

我们还制作了10个视频,展示了shinyCircos-V2.0的“Gallery”页面上前10个Circos图的创建过程。这10个视频已上传至YouTube、网易视频和我们自己的服务器,并在GitHub的shinyCircos-V2.0主页(https://github.com/YaoLab-Bioinfo/shinyCircos-V2.0)和"Help"页面提供了相应的链接。

讨  论

随着测序技术的进步,Circos图已成为不同学术研究领域中数据可视化的重要工具。因此,一个易于使用且具有丰富功能的工具是必不可少的。ShinyCircos-V2.0相对于我们之前的应用程序版本来说,拥有更加友好的用户界面和许多新功能,使用户能够创建更高级和更具定制性的Circos图。与ShinyCircos-V1相比,ShinyCircos-V2.0提供了额外的功能,如轨道索引、图例、坐标轴标签和刻度线,以及创建任意数量轨道的能力。我们致力于维护和改进ShinyCircos-V2.0,通过解决用户反馈和开发新的增强功能。我们相信,ShinyCircos-V2.0将成为不同领域的研究人员的得力工具,涵盖的领域从基因组学到生态学等各个方面。

代码和数据可用性:

shinyCircos‐V2.0的源代码可在GitHub中获得(https://github.com/YaoLab-Bioinfo/shinyCircos-V2.0)。支持信息(图形、表格、脚本、图形摘要、幻灯片、视频、中文翻译版,以及更新材料)可以在在线DOI或iMeta Science http://www.imeta.science/中获取。

引文格式:

Wang, Yazhou, Lihua Jia, Ge Tian, Yihan Dong, Xiao Zhang, Zhengfu Zhou, Xiang Luo, Yang Li, and Wen Yao. 2023.“shinyCircos‐V2.0: Leveraging the creation of Circos plot with enhanced usability and advanced features.” iMeta e109. https://doi.org/10.1002/imt2.109

作者简介

王亚洲(第一作者)

河南农业大学遗传学硕士生。

研究方向为生物信息学。目前研究的主要课题为生物信息分析工具的开发和玉米泛基因组分析。

贾利华(第一作者)

河南农业大学农学博士生。

研究方向为玉米氮高效利用的遗传调控基础。目前研究的主要课题为玉米NRT基因参与氮肥吸收和转运的分子机制研究。

姚文(通讯作者)

河南农业大学教授(校聘),硕士生导师。

研究方向为植物基因组学与生物信息学,主持国家自然科学基金、河南省自然科学基金、河南省重点研发与推广专项等多个项目。发表SCI论文48篇,总被引2300多次,其中以第一作者或通讯作者在Genome Biology、Nucleic Acids Research、eLife、Briefs in Bioinformatics、iMeta等期刊发表SCI论文16篇。相关成果获得9项软件著作权。

更多推荐

(▼ 点击跳转)

高引文章 ▸▸▸▸

iMeta | 引用13000+,海普洛斯陈实富发布新版fastp,更快更好地处理FASTQ数据

高引文章 ▸▸▸▸

iMeta | 德国国家肿瘤中心顾祖光发表复杂热图(ComplexHeatmap)可视化方法

高引文章▸▸▸▸

iMeta | 高颜值绘图网站imageGP+视频教程合集

1卷1期

1卷2期

1卷3期







请到「今天看啥」查看全文