一种展示高通量测序数据结果的交互式可视化报告系统

文档序号:28557821发布日期:2022-01-19 16:23阅读:168来源:国知局
一种展示高通量测序数据结果的交互式可视化报告系统

1.本发明涉及计算机技术领域,尤其是涉及一种展示高通量测序数据结果的交互式可视化报告系统。


背景技术:

2.随着高通量检测技术的进步,通过对dna、rna、蛋白质、代谢物等多种物质的检测,可以深入了解机体的遗传背景、基因转录、蛋白表达及代谢的情况,所产生的基因组(genomics)、转录组(transcriptomics)、蛋白组(proteomics)和代谢组(metabolomics)等数据,统称为多组学数据(multi-omics data)。多组学数据的临床应用,为病因探索提供了思路与方法,也为疾病预防、诊断与治疗指引了方向,并成为了精准医学中重要的组成部分。通过对多组学数据进行分析,并产生相应的分析报告是用户提炼知识的直接入口,它决定着用户最终接受的结果信息的准确性与一致性。
3.然而,在传统的静态报告中,静态图表通常一经计算生成则较难修改,若有增加新的指标组合的需求,则需要重新生成图表与整理静态报告,报告与图表管理、溯源与复用难度大。此外,静态图表多为选择性展示,报告结果与图表分离,不可交互,难以直接洞察真实数据。这不仅违背了精准医学的“精准”理念,也会对精准医学的发展和应用造成严重影响。


技术实现要素:

4.本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种展示高通量测序数据结果的交互式可视化报告系统,该系统可以实时计算、生成动态图,且具有强大的交互操作能力、高度可定制化和社区共享模式。
5.本发明的目的可以通过以下技术方案来实现:
6.一种展示高通量测序数据结果的交互式可视化报告系统,包括:
7.报告生成与连接模块,连接markdown报告模板、多组学数据和插件,并将报告模板转换成在线html报告;
8.报告模板编辑模块,对报告模板进行在线撰写和调试;
9.插件模块,实现插件的动态加载和编译,并为报告模板编辑模块提供对应插件;
10.管理模块,对报告模板撰写过程以及生成过程的可溯源操作进行管理。
11.进一步地,所述报告生成与连接模块包括:
12.插件语法单元,用于生成自定义插件语法;
13.markdown解释器,通过识别所述自定义插件语法,调用相应插件,传入相关参数与数据,将插件运行后生成的javascript代码以script标签的形式嵌入至markdown模板中;并根据自定义的解析规则,将所述相关参数与数据进行转换并完成markdown的渲染和报告的生成。
14.进一步地,所述自定义的解析规则包括词法解析规则、语法解析规则和代码生成/执行规则。所述自定义的解析规则的解析执行包括以下步骤:
15.1)词法解析:根据构词规则识别字符串为单词序列;
16.2)语法解析:将所述单词序列组合成短语;
17.3)代码生成/执行:根据所述短语查找相应插件,传入解析得到的参数列表,初始化插件类并处理参数列表,缓存所有数据文件至指定工作目录并替换文件路径,调用插件实例中的run方法生成可视化图表相关的javascript代码,将其以script标签插入markdown文件指定位置。
18.进一步地,所述自定义插件语法为遵循通用语言中函数调用的惯用语法,所述自定义插件语法包括插件和参数列表,所述插件设有特殊字符,该特殊字符与插件名组成标识符。
19.进一步地,所述插件模块包括:
20.插件动态加载单元,识别当前环境中符合要求的插件,并注册至插件列表中,供后续生成报告时调用;
21.所述交互式插件库,存放插件各类插件。进一步地,所述交互式插件库存有包括表格类插件、透视图与透视表类插件以及交互式可视化图插件。进一步地,所述交互式可视化图插件采用自定义参数控制面板与实时计算的方式动态生成用以展示报告结果的动态图表。
22.进一步地,所述报告模板编辑模块包括:
23.web服务单元,提供用户注册通道数据下载、报告文件实时修改与渲染以及报告文件交互展示等功能;
24.markdown编辑器,通过web服务单元执行markdown文本的在线编辑、调试与预览;
25.文件监控单元,通过监控指定目录下报告文件的变化判断文件是否被修改。
26.进一步地,所述管理模块包括:
27.报告模板样本生成工具,为使用者提供相应的报告模板生成命令,生成符合最佳实践规范的报告模样样本以及相应的说明文档;
28.报告模板版本控制,实现报告模板的版本控制;
29.插件与插件库管理单元,对交互式插件库及插件进行管理,所述插件还包括社区研发的各种类型可视化插件,以及一键安装在线插件仓库中指定版本的可视化插件。
30.与现有技术相比,本发明具有以下优点:
31.1)高度可定制化。本发明通过插件语法单元生成自定义插件语法,利用markdown解释器灵活调用相应插件,并将插件运行后生成的javascript代码以script标签的形式嵌入至markdown模板中,相比于静态图表能够实现有效交互,且实现高效率的可定制生成报告功能。
32.2)实时计算、生成动态图。本发明通过加载交互式可视化图插件,采用自定义参数控制面板与实时计算的方式动态生成动态图表,可实现实时、动态且多维度展示并探索报告结果。
33.3)具有强大的交互操作能力。本发明通过设置交互式插件库,插件类型多样,提供了丰富可视化图表,有利于全面展示多组学数据的分析结果。
34.4)社区共享。本发明通过插件动态加载单元自动识别当前环境中符合entry point要求的插件,并且动态加载插件添加到报告系统中,实现报告的分享和复用。
附图说明
35.图1为本实施例一种展展示高通量测序数据结果的交互式可视化报告系统的结构示意图;
36.图2为插件调用语法与可视化图表;
37.图3为传统的结果展示模式;
38.图4本实施例一种展示高通量测试数据结果的交互式可视化报告系统的展示模式。
具体实施方式
39.下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述实施例。
40.参考图1所示,本实施例提供一种展示高通量测序数据结果的交互式可视化报告系统,包括:报告模板生成与连接模块m1、插件模块m2、报告模板编辑模块m3和管理模块m4。
41.报告模板生成与连接模块m1:用于连接markdown报告模板、多组学数据、插件和其他与待生成报告所需的文件,并将报告模板转换成在线html报告;
42.所述报告模块生成与连接模块m1包括插件语法单元11和markdown解释器12,完成将markdown报告模板的内容转化为可视化插件调用语法,再通过识别相应语法,生成可视化图表代码,最后完成markdown报告的生成。
43.插件语法单元11用于生成自定义的插件语法,并且在markdown报告模板指定插件及其运行所需的参数和数据路径;
44.所述自定义的插件语法遵循通用语言中函数调用惯用语法,由插件与参数列表组成,引入@作为特殊字符,由@与插件名共同组成标识符;
45.markdown解释器12主要基于python pyparsing包开发而成,通过标识符识别相应语法,并根据自定义的语法解析规则,其解析为插件名与参数列表,而后通过插件系统调用相应插件,传入相关参数与数据,将插件运行后生成的javascript代码以script标签的形式嵌入至markdown模板中;将用户的输入转换为一系列由javascript、html与css代码组成的代码块嵌入至报告中,完成markdown的渲染与报告生成,以此解决报告内容与图表生成分离导致的报告不可溯源的问题。
46.markdown解释器12的解析执行包括以下步骤:
47.101)词法解析:根据事先定义的构词规则将一长串整行相连的字符串或多行字符串识别成单词序列;
48.102)语法解析:在词法解析的基础上将单词序列组合成短语,并判断其在结构上是否符合事先定义的规范;
49.103)代码生成/执行:基于语法解析得到的语法短语,从插件注册表中查找相应的插件,传入解析得到的参数列表并初始化插件类,而后调用参数预处理器处理参数列表,缓存所有数据文件至指定工作目录并替换文件路径,并调用插件实例中的run方法生成可视化图表相关的javascript代码,将其以script标签插入markdown文件指定位置。
50.插件模块m2:用于实现插件的动态加载和编译;
51.所述插件模块m2包括插件动态加载单元21和交互式插件库22;
52.所述插件模块m2还包括一套插件开发规范,所述插件开发规范用于规定插件开发者基于特定的语言规范生成可被插件系统调用的插件的准备工作;
53.插件动态加载单元21基于python包的entry point机制实现,用于识别当前环境中符合要求的插件,并注册至插件列表中,供后续生成报告时调用;
54.且基于baseplugin基类构建特定插件的子类,子类主要负责完成数据文件的准备、可视化代码的生成等操作,同时在python包管理文件中定义明确的entry point。
55.交互式插件库22用于存放各类插件,包括表格类插件、透视图与透视表类插件以及交互式可视化图插件;
56.所述交互式可视化图插件采用自定义参数控制面板与实时计算的方式动态生成动态图表,可实现动态、多维度展示并探索报告结果。
57.如图3所示和图4为传统的结果展示模式与交互式可视化报告系统展示模式的对比。
58.具体而言,研究人员将数据结果以静态图表的方式展示并发表,而静态图表相关数据、代码与计算环境可能并未随之按规范分享,此时其它研究人员可能面临难以重复静态图表以及无法进一步探索数据的问题。在交互式可视化报告系统模式下,研究人员基于markdown、数据与交互式插件将报告发布为在线展示网站,其它研究人员可在网页端对感兴趣的图表进行动态交互式点选,查看不同指标组合的数据分布特征。
59.本实施例提供的交互式可视化报告系统的模式显著优于静态图表的模式,不仅可重现研究中的图表,且支持多人同时操作探索研究数据,依据需求展示数据中的指标的分布特征,不局限于随文章发表的指标,更有助于实现报告的有效管理及可溯源与可复用两大目标。
60.报告模板编辑模块m3:用于报告模板的在线撰写和调试;
61.报告模板编辑模块m3包括markdown编辑器31、web服务单元32与文件监控单元33,
62.markdown编辑器31采用javascript开发,用于markdown文本编辑与预览;
63.web服务单元32采用python web框架tornado开发而成;提供用户注册通道数据下载、报告文件实时修改与渲染以及报告文件交互展示等功能。
64.文件监控单元33采用python开发而成,用于通过监控指定目录下文件变化判断文件是否被修改。
65.管理模块m4:用于报告模板撰写过程以及生成过程的可溯源操作以及管理。
66.管理模块m4包括:报告模板样本生成工具41、报告模板版本控制42和插件与插件库管理单元43。
67.所述报告模板样本生成工具41基于python jinja2模板语言,使用者提供相应的报告模板生成命令即可生成符合最佳实践规范的报告模样样本以及相应的说明文档;
68.所述报告模板版本控制42基于python git库实现报告模板的版本控制,每次更新时都可基于相应命令实现报告模板的版本化记录;
69.所述插件与插件库管理43基于conda软件包管理系统进行插件与插件库管理,为一套在线插件仓库,其中包含社区研发的各种类型可视化插件,并且支持一键安装在线插件仓库中指定版本的可视化插件,实现插件版本管理和复用。
70.本实施例提供的一种展示高通量测序数据分析的交互式可视化报告系统的工作原理如下:
71.报告生成与连接模块m1和插件模块m2利用python插件技术和markdown语法解释器,将高通量测序数据转换成交互式可视化图表,并嵌入至静态的hmtl页面中,从而生成交互式可视化报告。报告模板编辑模块m3提供支持用户实时编辑的markdown编辑器31、web服务单元32和文件监控单元33,使得用户在线修改报告内容并实时渲染生成交互式报告,以所见即所得的方式帮助用户不断调整优化报告。
72.由于用户撰写报告内容时,通常面临可视化插件安装、相同场景报告内容反复生成的需求。因此,管理模块m4帮助用户快速安装与管理可视化插件并将撰写好的报告内容保存为模板,便于相同场景时快速复用报告,提高同类报告生成效率。
73.上述的对实施例的描述是为便于该技术领域的普通技术人员能理解和使用发明。熟悉本领域技术的人员显然可以容易地对这些实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,不脱离本发明范畴所做出的改进和修改都应该在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1