面向时序数据的词云生成展示方法及系统与流程

文档序号:32898088发布日期:2023-01-13 00:58阅读:39来源:国知局
面向时序数据的词云生成展示方法及系统与流程

1.本发明涉及时序数据的词云生成的技术领域,具体地,涉及面向时序数据的词云生成展示方法及系统。


背景技术:

2.云图是一种展示文本或文本集合内容的可视化技术,通过字体大小和颜色等主要对高频项进行展示,可以展示某一领域的发展状况。目前依据展示项的不同主要由标签云图和词云图两大类。目前依赖用户的标签进行分析,后者主要对全文进行分析。目前云图技术的主要问题在于,不能够对主题进行有效揭示,一方面展示项中会有较多的同义词或近义词,另一方面有一些与待分析领域无关的项或者通用项。
3.工作中会产生各种日志,比如每日填写的工作内容、git的提交、运营记录等,通过词云可以直观地展示这些日志的主要内容。
4.目前较少有关于时序数据的词云相关的专利和论文,现有技术中,中国科学技术信息研究所在申请号为cn113378512a的专利,公开了“一种基于自动标引的无级动态演化主题云图的生成方法”,介绍了使用时间轴动态展示不同时间词云的方法,但没有描述时间轴的具体实现也没有关于时间轴范围选择词云的相关方法。
5.adrian等人提出的“codetimeline:storytelling with versioning data”与我们想要做的接近,提出了使用时间轴展示项目每个版本代码提交commit构成的词云,但其停留在特定主题。
6.因此,需要提出一种新的技术方案以改善上述技术问题。


技术实现要素:

7.针对现有技术中的缺陷,本发明的目的是提供一种面向时序数据的词云生成展示方法及系统。
8.根据本发明提供的一种面向时序数据的词云生成展示方法,所述方法包括如下步骤:
9.步骤s1:读取用户配置,注册词云服务接口,生成用户词典和停止词典;
10.步骤s2:用户选择范围时间段参数,并行调用词云服务接口获取词云数据;
11.步骤s3:词云服务接口先从数据库获取词云数据,若不存在,则生成词云数据;
12.步骤s4:前端归并词云数据,计算颜色大小属性,渲染成词云图。
13.优选地,所述步骤s3的生成词云数据包括如下步骤:
14.步骤s3.1:从用户配置的词云数据源获取原始数据;
15.步骤s3.2:对原始数据根据用户词典进行分词,分词后根据停止词典进行过滤;
16.步骤s3.3:对分词统计词频,并归一化降噪为词云权重,构成词云数据;
17.步骤s3.4:保存到数据库中并返回。
18.优选地,所述用户配置包括词云数据源配置、用户词典配置和停止词典配置;词云
数据源配置、用户词典配置和停止词典配置各为一个数据源列表,每个数据源支持多种来源包括接口、sql语句、文件和纯文本以及参数;通过在调用时指定参数数据从数据源获取原始数据;
19.数据源配置为一个列表,每个数据源配置包括数据获取接口及参数信息;
20.词云配置包括词语的最大数量、归一化算法;
21.用户词典为一个列表,支持多个用户词典的来源,停止词典配置的结构形式和用户词典一致;
22.词云数据源需要指定数据源的唯一id作为注册词云服务接口路径以及持久化词云数据的数据表名使用,同时支持定义是否持久化、回调函数属性;
23.数据源支持嵌套,即一个数据源能够以自身获取的数据作为多个参数从另一个数据源批量获取数据聚合为该数据源的结果;
24.一个数据源从另一个数据源获取批量的数据生成词云数据。
25.优选地,所述词云服务接口解析用户配置,依据用户配置注册词云服务;
26.从文件、数据源获取词典合并为实际用户词典和停止词典;
27.读取数据源配置,使用其中的id和参数注册词云服务接口,当用户访问该服务接口时,先将从词云数据持久化模块获取历史生成的词云数据,若不存在或者版本不一致,则从数据源获取数据,依据用户词典和停止词典进行分词,并统计词频,依据词云配置计算权重生成词云数据,并使用词云数据持久化模块保存。
28.优选地,所述词云数据持久化模块支持sql和nosql持久化存储词云数据,使用sqlite;持久化模块将为用户的每个词云数据源配置单独创建数据表,使用数据源的id和参数名作为表名,并对数据源指定的参数列表构建索引。
29.本发明还提供一种面向时序数据的词云生成展示系统,所述系统包括如下模块:
30.模块m1:读取用户配置,注册词云服务接口,生成用户词典和停止词典;
31.模块m2:用户选择范围时间段参数,并行调用词云服务接口获取词云数据;
32.模块m3:词云服务接口先从数据库获取词云数据,若不存在,则生成词云数据;
33.模块m4:前端归并词云数据,计算颜色大小属性,渲染成词云图。
34.优选地,所述模块m3的生成词云数据包括如下模块:
35.模块m3.1:从用户配置的词云数据源获取原始数据;
36.模块m3.2:对原始数据根据用户词典进行分词,分词后根据停止词典进行过滤;
37.模块m3.3:对分词统计词频,并归一化降噪为词云权重,构成词云数据;
38.模块m3.4:保存到数据库中并返回。
39.优选地,所述用户配置包括词云数据源配置、用户词典配置和停止词典配置;词云数据源配置、用户词典配置和停止词典配置各为一个数据源列表,每个数据源支持多种来源包括接口、sql语句、文件和纯文本以及参数;通过在调用时指定参数数据从数据源获取原始数据;
40.数据源配置为一个列表,每个数据源配置包括数据获取接口及参数信息;
41.词云配置包括词语的最大数量、归一化算法;
42.用户词典为一个列表,支持多个用户词典的来源,停止词典配置的结构形式和用户词典一致;
43.词云数据源需要指定数据源的唯一id作为注册词云服务接口路径以及持久化词云数据的数据表名使用,同时支持定义是否持久化、回调函数属性;
44.数据源支持嵌套,即一个数据源能够以自身获取的数据作为多个参数从另一个数据源批量获取数据聚合为该数据源的结果;
45.一个数据源从另一个数据源获取批量的数据生成词云数据。
46.优选地,所述词云服务接口解析用户配置,依据用户配置注册词云服务;
47.从文件、数据源获取词典合并为实际用户词典和停止词典;
48.读取数据源配置,使用其中的id和参数注册词云服务接口,当用户访问该服务接口时,先将从词云数据持久化模块获取历史生成的词云数据,若不存在或者版本不一致,则从数据源获取数据,依据用户词典和停止词典进行分词,并统计词频,依据词云配置计算权重生成词云数据,并使用词云数据持久化模块保存。
49.优选地,所述词云数据持久化模块支持sql和nosql持久化存储词云数据,使用sqlite;持久化模块将为用户的每个词云数据源配置单独创建数据表,使用数据源的id和参数名作为表名,并对数据源指定的参数列表构建索引。
50.与现有技术相比,本发明具有如下的有益效果:
51.1、本发明通过采用配置化的词云注册服务结构,实现了词云的服务化,方便开发者自定义词云数据源快速构建词云服务;
52.2、本发明通过实现范围时间轴滑动控件,用户不需要从时间选择框选择范围时间,提升了用户的使用体验;
53.3、本发明通过采用前端并行获取词云数据归并的方式,降低了服务器的计算压力;
54.4、本发明通过采用可配置化的用户词典和停止词典,用户可以贡献词典,提升了词云在特定领域内的分词展现效果。
附图说明
55.通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
56.图1为本发明的流程示意图。
具体实施方式
57.下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
58.实施例1:
59.根据本发明提供的一种面向时序数据的词云生成展示方法,方法包括如下步骤:
60.步骤s1:读取用户配置,注册词云服务接口,生成用户词典和停止词典;
61.步骤s2:用户选择范围时间段参数,并行调用词云服务接口获取词云数据;
62.步骤s3:词云服务接口先从数据库获取词云数据,若不存在,则生成词云数据;
63.步骤s3.1:从用户配置的词云数据源获取原始数据;
64.步骤s3.2:对原始数据根据用户词典进行分词,分词后根据停止词典进行过滤;
65.步骤s3.3:对分词统计词频,并归一化降噪为词云权重,构成词云数据;
66.步骤s3.4:保存到数据库中并返回。
67.步骤s4:前端归并词云数据,计算颜色大小属性,渲染成词云图。
68.用户配置包括词云数据源配置、用户词典配置和停止词典配置;词云数据源配置、用户词典配置和停止词典配置各为一个数据源列表,每个数据源支持多种来源包括接口、sql语句、文件和纯文本以及参数;通过在调用时指定参数数据从数据源获取原始数据;数据源配置为一个列表,每个数据源配置包括数据获取接口及参数信息;词云配置包括词语的最大数量、归一化算法;用户词典为一个列表,支持多个用户词典的来源,停止词典配置的结构形式和用户词典一致;词云数据源需要指定数据源的唯一id作为注册词云服务接口路径以及持久化词云数据的数据表名使用,同时支持定义是否持久化、回调函数属性;数据源支持嵌套,即一个数据源能够以自身获取的数据作为多个参数从另一个数据源批量获取数据聚合为该数据源的结果;一个数据源从另一个数据源获取批量的数据生成词云数据。
69.词云服务接口解析用户配置,依据用户配置注册词云服务;从文件、数据源获取词典合并为实际用户词典和停止词典;读取数据源配置,使用其中的id和参数注册词云服务接口,当用户访问该服务接口时,先将从词云数据持久化模块获取历史生成的词云数据,若不存在或者版本不一致,则从数据源获取数据,依据用户词典和停止词典进行分词,并统计词频,依据词云配置计算权重生成词云数据,并使用词云数据持久化模块保存。
70.词云数据持久化模块支持sql和nosql持久化存储词云数据,使用sqlite;持久化模块将为用户的每个词云数据源配置单独创建数据表,使用数据源的id和参数名作为表名,并对数据源指定的参数列表构建索引。
71.实施例2:
72.实施例2为实施例1的优选例,以更为具体地对本发明进行说明。
73.本发明还提供一种面向时序数据的词云生成展示系统,系统包括如下模块:
74.模块m1:读取用户配置,注册词云服务接口,生成用户词典和停止词典;
75.模块m2:用户选择范围时间段参数,并行调用词云服务接口获取词云数据;
76.模块m3:词云服务接口先从数据库获取词云数据,若不存在,则生成词云数据;
77.模块m3.1:从用户配置的词云数据源获取原始数据;
78.模块m3.2:对原始数据根据用户词典进行分词,分词后根据停止词典进行过滤;
79.模块m3.3:对分词统计词频,并归一化降噪为词云权重,构成词云数据;
80.模块m3.4:保存到数据库中并返回。
81.模块m4:前端归并词云数据,计算颜色大小属性,渲染成词云图。
82.用户配置包括词云数据源配置、用户词典配置和停止词典配置;词云数据源配置、用户词典配置和停止词典配置各为一个数据源列表,每个数据源支持多种来源包括接口、sql语句、文件和纯文本以及参数;通过在调用时指定参数数据从数据源获取原始数据;数据源配置为一个列表,每个数据源配置包括数据获取接口及参数信息;词云配置包括词语的最大数量、归一化算法;用户词典为一个列表,支持多个用户词典的来源,停止词典配置的结构形式和用户词典一致;词云数据源需要指定数据源的唯一id作为注册词云服务接口
路径以及持久化词云数据的数据表名使用,同时支持定义是否持久化、回调函数属性;数据源支持嵌套,即一个数据源能够以自身获取的数据作为多个参数从另一个数据源批量获取数据聚合为该数据源的结果;一个数据源从另一个数据源获取批量的数据生成词云数据。
83.词云服务接口解析用户配置,依据用户配置注册词云服务;从文件、数据源获取词典合并为实际用户词典和停止词典;读取数据源配置,使用其中的id和参数注册词云服务接口,当用户访问该服务接口时,先将从词云数据持久化模块获取历史生成的词云数据,若不存在或者版本不一致,则从数据源获取数据,依据用户词典和停止词典进行分词,并统计词频,依据词云配置计算权重生成词云数据,并使用词云数据持久化模块保存。
84.词云数据持久化模块支持sql和nosql持久化存储词云数据,使用sqlite;持久化模块将为用户的每个词云数据源配置单独创建数据表,使用数据源的id和参数名作为表名,并对数据源指定的参数列表构建索引。
85.实施例3:
86.实施例3为实施例1的优选例,以更为具体地对本发明进行说明。
87.本发明通过配置化的后端词云数据生成服务,可以快捷地为前述各种日志等时序数据生成时间段词云。同时基于滑动控件实现范围时间轴选择ui组件,在前端归并多时间段的日志词云数据,计算大小颜色旋转角等数据,展示词云。
88.用户配置:用户配置主要包括数据源配置、词云配置、用户词典配置以及停止词典配置等。数据源配置为一个列表,每个数据源配置包括数据获取接口及参数等信息;词云配置包括词语的最大数量、词云的布局算法等;用户词典为一个列表,支持多个用户词典的来源,如文件、接口、直接数据等,停止词典配置的结构形式和用户词典一致。
89.词云数据服务模块:该模块解析用户配置,依据用户配置注册词云服务。
90.①
解析用户词典配置和停止词典配置:从文件、接口等获取词典合并为实际用户词典和停止词典。
91.②
解析注册数据源配置:读取数据源配置,使用其中的id和参数注册词云服务接口,当用户访问该服务接口时,先将从词云数据持久化模块获取历史生成的词云数据,若不存在或者版本不一致,则从数据源定义的接口获取数据,依据用户词典和停止词典进行分词,并统计词频,依据词云配置计算权重、颜色、旋转角度等生成词云数据,并使用词云数据持久化模块保存。
92.③
从数据源获取数据支持嵌套,一个数据源可以从另一个数据源获取批量的数据生成词云数据。
93.词云数据持久化模块:数据持久化模块使用nosql数据库持久化存储词云数据,提供插入、保存、更新和删除等功能。依据用户的数据源配置,每个数据源将单独创建一个集合(collection、表),并使用id+参数构建索引。
94.时序词云可视化交互模块:该模块主要包括一个范围时间轴滑动控件,当用户滑动该控件后,将并行从词云数据服务模块接口请求每一个时间段的词云数据,并在前端归并用户选择的时间段范围内的数据,展现为词云图。该范围时间轴滑动控件基于一般ui组件库中的滑动控件,其值一般为数字。本实现将最大值当作当前时间段,默认即选择到当前时间段,数值减1即表示为时间段减1,通过常驻的tooltip显示当前选择的时间段。同时通过在用户拖动时强制更新所选择节点的方式,实现固定时间段比如一季度、一年度的拖动。
95.本发明提供的一种面向时序数据的词云生成展示方法包括如下步骤:
96.步骤1:读取用户配置,注册词云服务接口,生成用户词典和停止词典;
97.步骤2:用户选择范围时间段等参数,并行调用词云服务接口获取词云数据;
98.步骤3:词云服务接口先从数据库获取词云数据,若不存在,则生成词云数据;
99.步骤4:前端归并词云数据,计算颜色大小等属性,渲染成词云图;
100.其中,步骤3的生成词云数据包含如下步骤:
101.步骤3.1:从用户配置的数据接口获取原始数据;
102.步骤3.2:对原始数据根据用户词典进行分词,分词后根据停止词典进行过滤;
103.步骤3.3:对分词统计词频,并归一化降噪为词云权重,构成词云数据;
104.步骤3.4:保存到数据库中并返回。
105.本领域技术人员可以将本实施例理解为实施例1、实施例2的更为具体的说明。
106.本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
107.以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本技术的实施例和实施例中的特征可以任意相互组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1