数据分析可视化方法、装置、电子设备和存储介质与流程

文档序号:29600762发布日期:2022-04-09 10:31阅读:126来源:国知局
数据分析可视化方法、装置、电子设备和存储介质与流程

1.本发明涉及数据分析领域,具体而言,涉及一种数据分析可视化方法、装置、电子设备和存储介质。


背景技术:

2.在对数据进行分析的过程,会得到多个节点。目前通常是人工绘制多个节点间关系的方式,来实现数据分析的可视化,但是由于节点较多、关系复杂,导致效率较低且容易出错。


技术实现要素:

3.有鉴于此,本发明的目的在于提供一种数据分析可视化方法、装置、电子设备和存储介质。
4.为了实现上述目的,本发明采用的技术方案如下:第一方面,本发明提供一种数据分析可视化方法,所述方法包括:根据数据经分析处理后的多个节点,获得多个节点序列;其中,每个所述节点均存在与其关联的关联节点;所述节点序列中任意两个相邻的节点互为关联节点,所述节点序列表示分析路径;对于每个所述节点,根据所述节点在其所属的每个节点序列中的顺序获得所述节点的列编号,得到每个所述节点的列编号;根据每个所述节点的列编号,获得多个节点列;所述节点列中全部节点的列编号相同;对每个所述节点列中的全部节点排序,确定每个所述节点在其所属的节点列中的顺序,得到每个所述节点的行编号;根据每个所述节点的列编号和行编号,确定每个所述节点在显示界面中的位置;按照每个所述节点在所述显示界面中的位置,将每个所述节点与其关联节点连接,显示所述多个节点的关联关系。
5.在可选的实施方式中,所述根据所述节点在其所属节点序列中的顺序获得所述节点的列编号的步骤,包括:根据所述节点在其所属的每个节点序列中的顺序,获得所述节点在其所属的每个节点序列中的第一序号;从所述节点的全部第一序号中选取最大的第一序号作为所述节点的列编号。
6.在可选的实施方式中,每个所述节点列均与其节点的列编号对应;所述根据所述多个节点列,确定每个所述节点在其所属的节点列中的顺序,得到每个所述节点的行编号的步骤,包括:按照所述列编号从小到大的顺序,根据最小节点列中全部节点的顺序,依次获得每个第一节点列中全部节点的顺序;其中,最小节点列与最小列编号对应,所述第一节点列
与除所述最小列编号以外的第一列编号对应;按照所述列编号从大到小的顺序,根据最大节点列中全部节点的顺序,依次获得每个第二节点列中全部节点的顺序;其中,最大节点列与最大列编号对应,所述第二节点列与除所述最大列编号以外的第二列编号对应;根据每个所述节点列中全部节点的顺序,确定每个所述节点其在其所属的节点列中的顺序,得到每个所述节点的第二序号;判断全部节点的第二序号是否满足预设条件;若是,则将每个所述节点的第二序号作为每个所述节点的行编号;若否,则重复执行上述步骤直至全部节点的第二序号满足所述预设条件。
7.在可选的实施方式中,所述根据最小节点列中全部节点的顺序,依次确定每个第一节点列中全部节点的顺序的步骤,包括:依次将每个所述第一节点列作为第一待定节点列;将所述第一待定节点列的前一个节点列作为第一前序节点列;根据所述第一前序节点列中全部节点的顺序,依次对所述第一前序节点列中的每个第一前节点编号,获得每个所述第一前节点的初始值;对于所述第一待定节点列中的每个第一节点,获取与所述第一节点关联的全部第一前节点的初始值并计算平均值,将所述平均值作为所述第一节点的重心值,得到所述第一待定节点列中每个所述第一节点的第一重心值;按照所述第一重心值从小到大的顺序,对所述第一待定节点列中的全部第一节点排序,获得所述第一待定节点列中全部第一节点的顺序;依次遍历每个所述第一节点列,获得每个第一节点列中全部节点的顺序。
8.在可选的实施方式中,所述根据最大节点列中全部节点的顺序,依次获得每个第二节点列中全部节点的顺序的步骤,包括:依次将每个所述第二节点列作为第二待定节点列;将所述第二待定节点列的前一个节点列作为第二前序节点列;根据所述第二前序节点列中全部节点的顺序,依次对所述第二前序节点列中的每个第二前节点编号,获得每个所述第二前节点的初始值;对于所述第二待定节点列中的每个第二节点,获取与所述第二节点关联的全部第二前节点的初始值并计算平均值,将所述平均值作为所述第二节点的重心值,得到所述第二待定节点列中每个所述第二节点的第二重心值;按照所述第二重心值从小到大的顺序,对所述第二待定节点列中的全部第二节点排序,获得所述第二待定节点列中全部第二节点的顺序;遍历每个所述第二节点列,获得每个第二节点列中全部节点的顺序。
9.在可选的实施方式中,所述显示界面包括预设坐标系;所述判断全部节点的第二序号是否满足预设条件的步骤,包括:根据所述多个节点,获得多个节点组;所述节点组包括两个互为关联节点的节点,所述节点组中两个节点的列编号相邻;从所述多个节点组中获取任意一个节点组作为目标节点组;根据所述目标节点组中每个目标节点的列编号和第二序号,确定每个所述目标节
点在所述预设坐标系中的横坐标和纵坐标,获得所述目标节点组中两个目标节点的坐标;根据所述目标节点组中两个目标节点的坐标,获得所述目标节点组对应的线段函数;遍历每个所述节点组,获得每个所述节点组对应的线段函数;根据全部线段函数,计算交点的个数;判断所述交点的个数是否为零;若是,则全部节点的第二序号满足所述预设条件;若否,则全部节点的第二序号未满足所述预设条件。
10.第二方面,本发明提供一种数据分析可视化装置,所述装置包括:获取模块,用于根据数据经分析处理后的多个节点,获得多个节点序列;其中,每个所述节点均存在与其关联的关联节点;所述节点序列中任意两个相邻的节点互为关联节点,所述节点序列表示分析路径;处理模块,用于对于每个所述节点,根据所述节点在其所属的每个节点序列中的顺序获得所述节点的列编号,得到每个所述节点的列编号;根据每个所述节点的列编号,获得多个节点列;所述节点列中全部节点的列编号相同;对每个所述节点列中的全部节点排序,确定每个所述节点在其所属的节点列中的顺序,得到每个所述节点的行编号;根据每个所述节点的列编号和行编号,确定每个所述节点在显示界面中的位置;显示模块,用于按照每个所述节点在所述显示界面中的位置,将每个所述节点与其关联节点连接,显示所述多个节点的关联关系。
11.在可选的实施方式中,所述处理模块具体用于:根据所述节点在其所属的每个节点序列中的顺序,获得所述节点在其所属的每个节点序列中的第一序号;从所述节点的全部第一序号中选取最大的第一序号作为所述节点的列编号。
12.第三方面,本发明提供一种电子设备,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,实现前述实施方式中任一项所述的方法。
13.第四方面,本发明提供一种存储介质,所述存储介质上存储有计算机程序,该计算机程序被处理器执行时,实现前述实施方式中任一项所述的方法。
14.本发明提供的数据分析可视化方法、装置、电子设备和存储介质,通过先根据数据经分析处理后的多个节点且每个节点均存在与其关联的关联节点,获得多个表示分析路径的节点序列;然后对于每个节点,根据节点在其所属的每个节点序列中的顺序获得节点的列编号,得到每个节点的列编号;然后根据每个节点的列编号,获得多个节点列且每个节点列中全部节点的列编号相同;再对每个节点列中的全部节点排序,确定每个节点在其所属的节点列中的顺序,得到每个节点的行编号;最后根据每个节点的列编号和行编号,确定每个节点在显示界面中的位置并将每个节点与其关联节点连接,显示多个节点的关联关系。从而对数据的分析处理过程实现了可视化。并且基于节点唯一的列编号和行编号,避免了节点重复展示,可以更加直观地展示节点之间的关系。进而保证了节点间关系展示的正确性和提高了数据分析处理的效率。
15.为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
16.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
17.图1示出了现有技术中数据分析可视化的示例图;图2示出了本发明实施例提供的电子设备方框示意图;图3示出了本发明实施例提供的数据分析可视化方法的流程示意图之一;图4示出了本发明实施例提供的数据分析可视化方法的流程示意图之二;图5示出了本发明实施例提供的数据分析可视化方法的流程示意图之三;图6示出了本发明实施例提供的数据分析可视化方法的示例图之一;图7示出了本发明实施例提供的数据分析可视化方法的示例图之二;图8示出了本发明实施例提供的数据分析可视化方法的示例图之一;图9示出了本发明实施例提供的数据分析可视化方法的示例图之三;图10示出了本发明实施例提供的数据分析可视化方法的示例图之四;图11示出了本发明实施例提供的数据分析可视化方法的示例图之五;图12示出了本发明实施例提供的数据分析可视化方法的示例图之六;图13示出了本发明实施例提供的数据分析可视化方法的示例图之七;图14示出了本发明实施例提供的数据分析可视化装置的一种功能模块图。
18.图标:100-电子设备;110-总线;120-处理器;130-存储器;150-i/o模块;170-通信接口;300-数据分析可视化装置;310-获取模块;330-处理模块;350-显示模块。
具体实施方式
19.下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
20.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
22.在对数据进行分析的过程,会得到多个节点。目前通常是人工绘制多个节点间关系的方式,来实现数据分析的可视化,但是由于节点较多、关系复杂,导致效率较低且容易出错。虽然目前也有一些简单的展示节点关系的工具,但其通常会将节点重复的展示。例如,用户基于a表分别制作了b表和c表,然后又基于b表和c表制作了d表,其将节点a、b、c、d展的方式如图1所示。从图1中可以看出节点a重复展示了两次,采用这种方式在节点较多、节点之间的关系较为复杂的情况下,会将多个节点重复展示,不便于直观的展示出节点之间的关系。进而,本发明实施例提供了一种数据分析可视化的方法,已解决上述问题。
23.请参照图2,是本发明实施例提供的一种电子设备100的方框示意图。电子设备100包括总线110、处理器120、存储器130、i/o模块150、通信接口170。
24.总线110可以是将上述元件相互连接并在上述元件之间传递通信(例如控制消息)的电路。
25.处理器120可以通过总线110从上述其它元件(例如存储器130、i/o模块150、通信接口170等)接收命令,可以解释接收到的命令,并可以根据所解释的命令来执行计算或数据处理。
26.处理器120可以是一种集成电路芯片,具有信号处理能力。该处理器120可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
27.存储器130可以存储从处理器120或其它元件(例如i/o模块150、通信接口170等)接收的命令或数据或者由处理器120或其它元件产生的命令或数据。
28.存储器130可以是但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)。
29.i/o模块150可以接收经由输入-输出手段(例如,传感器、键盘、触摸屏等)从用户输入的命令或数据,并可以通过总线110向处理器120或存储器130传送接收到的命令或数据。并且用于显示从上述元件接收、存储、处理的各种信息(例如多媒体数据、文本数据),可以向用户显示视频、图像、数据等。
30.通信接口170可用于与其他节点设备进行信令或数据的通信。
31.可以理解的是,图2所示的结构仅为电子设备100的结构示意图,电子设备100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
32.本发明实施例提供的电子设备可以是智能手机、个人计算机、平板电脑、可穿戴设备、超级移动个人计算机(ultra-mobilepersonalcomputer,umpc)、上网本、个人数字助理(personaldigitalassistant,pda)等。本发明实施例对此不作任何限制。
33.可以理解的是,电子设备中安装有数据分析应用程序,在数据分析应用程序运行过程中,可以执行本发明实施例提供的数据分析可视化方法。
34.下面将以上述的电子设备100作为执行主体,执行本发明实施例提供的各个方法中的各个步骤,并实现对应技术效果。
35.请参阅图3,图3是本发明实施例提供的一种数据分析可视化方法的流程示意图。
36.步骤s202,根据数据经分析处理后的多个节点,获得多个节点序列;其中,每个节点均存在与其关联的关联节点;节点序列中任意两个相邻的节点互为关联节点,节点序列表示分析路径。
37.在本实施例中,用户可以通过数据分析应用程序对数据执行分析处理操作,得到多个节点。例如,用户对包含原始数据的原始表进行分析处理后,得到多张分析表。一张表即表示一个节点,原始表和这多张分析表则为多个节点。
38.基于每张表中数据的来源和去向,则表与表之间存在关联关系,即每张表所表示的节点均存在与其关联的关联节点。关联节点包括父节点和/或子节点,表示该表中数据的来源的表,则为该节点的父节点;表示该表中数据的去向的表,则为该节点的子节点。
39.例如,用户基于x表中的数据得到了y表中的数据,又基于y表中的数据得到了z表中的数据。节点x的关联节点仅包括子节点即节点y;节点y的关联节点包括父节点和子节点,即节点x和节点z;节点z的关联节点仅包括父节点即节点y。
40.可以根据每个节点及其关联节点,得到多个的节点序列,并且每个节点序列中任意两个相邻的节点互为关联节点,一个节点序列表示一个分析路径。
41.步骤s204,对于每个节点,根据节点在其所属的每个节点序列中的顺序获得节点的列编号,得到每个节点的列编号;在本实施例中,根据获得的多个节点序列,得到每个节点序列中全部节点的顺序。
42.对于每个节点,可以先获取包括该节点的全部节点序列即得到其所属的全部节点序列;然后根据该节点在其所属的每个节点序列中的顺序,可以得到该节点的列编号,从而得到每个节点的列编号。
43.节点的列编号可以理解为,在显示界面中该节点所在列的编号即表征其所属的列的位置。
44.步骤s206,根据每个节点的列编号,获得多个节点列;其中,节点列中全部节点的列编号相同。
45.在本实施例中,根据获得的每个节点的列编号,可以将属于同一列编号的节点划分为一个节点列,即按照每个节点的列编号,将全部的节点划分为多个节点列,每个节点列中全部节点的列编号相同。
46.步骤s208,对每个节点列中的全部节点排序,确定每个节点在其所属的节点列中的顺序,得到每个节点的行编号;在本实施例,根据获得的多个节点列,可以对每个节点列中的全部节点进行随机排序,也可以按照预设规则对每个节点列中的全部节点进行排序,确定每个节点在其所属的节点列的顺序,得到每个节点的行编号。
47.节点的行编号可以理解为,在显示界面中该节点所在行的编号即表征其所属的行的位置。
48.步骤s210,根据每个节点的列编号和行编号,确定每个节点在显示界面中的位置;在本实施例中,获得了每个节点的列编号和行编号,可以认为获得了显示界面中每列的节点和每行的节点,即确定了全部节点的横纵关系。可以根据每个节点的列编号和行编号,获得每个节点在显示界面中预设坐标系的坐标,即确定每个节点在显示界面中的
位置。
49.步骤s212,按照每个节点在显示界面中的位置,将每个节点与其关联节点连接,显示多个节点的关联关系;在本实施例中,确定出每个节点在显示界面中的位置,可以将每个节点与其关联节点进行连接;基于连接后的多个节点,即可以显示出这多个节点之间的关联关系,从而实现了数据分析可视化。
50.可见基于上述步骤,通过先根据数据经分析处理后的多个节点且每个节点均存在与其关联的关联节点,获得多个表示分析路径的节点序列;然后对于每个节点,根据节点在其所属的每个节点序列中的顺序获得节点的列编号,得到每个节点的列编号;然后根据每个节点的列编号,获得多个节点列且每个节点列中全部节点的列编号相同;再对每个节点列中的全部节点排序,确定每个节点在其所属的节点列中的顺序,得到每个节点的行编号;最后根据每个节点的列编号和行编号,确定每个节点在显示界面中的位置并将每个节点与其关联节点连接,显示多个节点的关联关系。从而对数据的分析处理过程实现了可视化,并且基于节点唯一的列编号和行编号,避免了节点重复展示,可以更加直观地展示节点之间的关系,提高了数据分析处理的效率。
51.为了更好地理解本发明,下面以用户基于a表和b表中的数据进行分析处理,得到c至j表这8张表中的数据作为示例,进行说明。一张表即表示一个节点,为了便于描述,下面用节点a至j表示a至j表。下表1所示的是节点a至j及其关联节点。
52.表1基于表1可以理解为,对于表示原始数据的节点如节点a和节点b,其关联节点只包括子节点;对于表示中间量数据的节点如节点c至i,其关联节点包括父节点和子节点;对于表示结果数据的节点如节点j,其关联节点只包括父节点。
53.根据每个节点及其关联节点,可以得到多个表示分析路径的节点序列。即基于表1中的多个节点,可以得到多个节点序列:{a,c,h,j};{a,d,g,j};{a,d,h,j};{a,f,i,j};{b,d,g,j};{b,e,g,j};{b,j}。即获得了多个分析路径。
54.基于这多个节点序列可以得出,用户是基于a表得到了c表和f表,基于b表得到了e
表,基于a表和b表得到了d表;然后基于c表和d表得到了h表,基于d表和e表得到了g表,基于f表得到了i表;基于b表、g表、h表和i表得到了j表。
55.可以看出,不同的节点序列可以包括相同的节点,即同一节点在其所属的节点序列中可能具有不同顺序的情况,进而本发明实施例针对上述步骤s204提供了一种可能的实现方式,请参阅图4,其中步骤s204包括以下步骤:步骤s204-1,根据节点在其所属的每个节点序列中的顺序,获得节点在其所属的每个节点序列中的第一序号;在本实施例中,可以获取包括该节点的全部序列,基于该节点在其所属的每个节点序列中的顺序,得到该节点在其所属的每个节点序列中的序号即获得该节点的每个第一序号。
56.例如,基于上述示例中多个节点序列,以节点a为例,包括节点a的节点序列有:{a,c,h,j};{a,d,g,j};{a,d,h,j};{a,f,i,j}。节点a在这些节点序列中的顺序均是第一个,则节点a的第一序号为1。按照获得节点a的第一序号的方式,可以获得其他节点的第一序号。
57.步骤s204-3,从节点的全部第一序号中选取最大的第一序号作为节点的列编号。
58.在本实施例中,由于不同的节点序列包括相同的节点,则同一节点在其所属的节点序列可能具有不同的顺序,则对于每个节点,从该节点的全部第一序号中选取出最大的第一序号作为该节点的列编号,得到每个节点的列编号。
59.基于上述示例中多个节点序列和节点a至j,可以得到如下表2所示的每个节点的第一序号和列编号。
60.表2节点abcdefghij第一序号1122223332、4列编号1122223334可以理解的是,由于节点的列编号表示其在显示界面中所在的列的位置。例如,上述表2中j的第一序号有2和4,若将第一序号2作为节点j的列编号,则节点j将出现在显示界面中的第2列,其与节点c至f在同一列,不能直观的体现出这几个节点之间的关系。而节点j存在第一序号4,则表示在某个节点序列中,节点j前面有3个节点,为了更加直观的展示节点间的关系,则选取最大的第一序号作为节点的列编号。
61.可选地,对于步骤s204,本发明实施例还提供了另一种可能的实现方式。可以先获取每个节点序列中包含的节点总个数,选取最大的节点总个数的节点序列作为目标节点序列;将目标节点序列的最后一个节点作为参考节点,并将该目标节点序列的节点总个数作为该参考节点的参考序号。
62.然后在全部节点序列中获取该参考节点的前一个节点即获得每个前序节点,并将该参考节点的参考序号减一后的序号作为每个前序节点的参考序号;对于每个前序节点,若该前序节点不是节点序列中的第一个节点,则将该前序节点作为前述的参考节点。并重复在全部节点序列中获取该参考节点的前一个节点的步骤,直至前序节点是节点序列中的第一个节点,得到每个节点的每个参考序号。
63.最后对于每个节点,将该节点的全部参考序号中最小的参考序号作为该节点的列编号,得到每个节点的列编号。
64.为了便于理解,本发明实施例以节点序列{x1,y1,z1}、{x2,y1,z1}和{x1,z1}作为示例说明。
65.基于这三个节点序列分别包括的节点总个数,得到目标节点序列{x1,y1,z1}和{x2,y1,z1},获得参考节点z1即其参考序号3。
66.在全部节点序列中获取参考节点z1的前一个节点,获得每个前序节点即x1和y1,基于参考节点z1的参考序号3,得到前序节点x1和y1的参考序号2。
67.前序节点x1是节点序列{x1,z1}中第一个节点,则得到节点x1的参考序号2。前序节点y1在节点序列{x1,y1,z1}和{x2,y1,z1}均不是第一个节点,则将前序节点y1作为参考节点重复前述步骤。
68.在全部节点序列中获取参考节点y1的前一个节点,获得每个前序节点即x1和x2,基于参考节点y1的参考序号2,得到前序节点x1和x2的参考序号1。前序节点x1和x2分别是节点序列{x1,y1,z1}和{x2,y1,z1}的第一个节点,则得到前序节点的x1参考序号1和前序节点x2的参考序号1。
69.获得每个节点的参考序号,即节点x1的参考序号1、2;节点x2的参考序号1;节点y1的参考序号2;节点z1的参考序号3。
70.对于每个节点,将其全部参考序号中最小的参考序号作为该节点的列编号,即得到节点x1的列编号1;节点x2的列编号1;节点y1的列编号1;节点z1的列编号3。
71.可选地,为了减少节点间连接线的交叉点,能够进一步直观地展示节点间的关系。本发明实施例针对上述步骤s208,提供了一种可能的实现方式。请参阅图5,其中步骤s208包括以下步骤:在介绍具体的步骤之前,基于上述示例中节点a至j的列编号,可以得到多个节点列,每个节点列与其节点的列编号对应,即得到4个节点列。为了便于描述,节点列用l表示。
72.这4个节点列为:列编号1对应的节点列l1,其包括节点a和b;列编号2对应的节点列l2,其包括节点c、d、e和f;列编号3对应的节点列l3,其包括节点g、h和i;列编号4对应的节点列l4,其包括节点j。
73.步骤s208-1,按照列编号从小到大的顺序,根据最小节点列中全部节点的顺序,依次获得每个第一节点列中全部节点的顺序;其中,最小节点列与最小列编号对应,第一节点列与除最小列编号以外的第一列编号对应;基于上述示例,节点列l1为最小节点列,第一节点列为节点列l2、l3和l4。
74.可以按照列编号1、2、3、4的顺序,根据节点列l1中的全部节点的顺序,依次得到节点列l2中全部节点的顺序、节点列l3中全部节点的顺序和节点列l4中全部节点的顺序。
75.步骤s208-3,按照列编号从大到小的顺序,根据最大节点列中全部节点的顺序,依次获得每个第二节点列中全部节点的顺序;其中,最大节点列与最大列编号对应,第二节点列与除最大列编号以外的第二列编号对应;基于上述示例,节点列l4为最大节点列,第二节点列为节点列l1、l2和l3。
76.可以按照列编号4、3、2、1的顺序,根据节点列l4中的全部节点的顺序,依次得到节点列l3中全部节点的顺序、节点列l2中全部节点的顺序和节点列l1中全部节点的顺序。
77.步骤s208-5,根据每个节点列中全部节点的顺序,确定每个节点其在其所属的节点列中的顺序,得到每个节点的第二序号;基于上述示例,根据节点列l1至l4中全部节点的顺序,对于节点a至节点j,可以根据该节点在其所属节点列中的顺序获得该节点的第二序号,即得到节点a至节点j的第二序号。
78.步骤s208-7,判断全部节点的第二序号是否满足预设条件;在本实施例中,预设条件可以是第一预设条件,也可以是第二预设条件,还可以是第三预设条件。
79.第一预设条件是根据全部节点的列编号和第二序号,确定的全部节点在显示界面中的位置,所得到的全部节点的连接线的交点个数为零。
80.第二预设条件是根据全部节点的列编号和第二序号,确定的全部节点在显示界面中的位置,所得到的全部节点的连接线的交点个数,与上一次得到的交点个数相同。
81.第三预设条件是获得全部节点的第二序号的累计次数为预设次数。
82.根据全部节点的第二序号判断其是否满足预设条件,若满足则执行步骤s208-9a,若不满足则执行步骤s208-9b。
83.步骤s208-9a,将每个节点的第二序号作为每个节点的行编号;步骤s208-9b,重复执行上述步骤直至全部节点的第二序号满足预设条件。
84.上述步骤可以理解为,按照列编号的大小顺序,对全部节点列中的节点,进行一次正向即从小到大和一次逆向即从大到小的排序。即基于该预设规则,进行多次正逆排序可以使得节点间的连线交点减少,直至没有交点或者交点个数不再变化即最少。
85.针对上述步骤s208-1,本发明实施例提供了一种可能的实现方式,其中步骤s208-1包括以下步骤:步骤s208-1-1,依次将每个第一节点列作为第一待定节点列;步骤s208-1-3,将第一待定节点列的前一个节点列作为第一前序节点列;为了便于理解,请参阅图6,第一待定节点列为节点列l2,其包括节点c、d、e和f;第一前序节点列为节点列l1,其包括节点a和b。
86.步骤s208-1-5,根据第一前序节点列中全部节点的顺序,依次对第一前序节点列中的每个第一前节点编号,获得每个第一前节点的初始值;可以理解的是,进行第一次排序时,最小节点列中的全部节可以是随机排列的。
87.如图6中,节点列l1的顺序为第一个是节点a、第二个是节点b,则根据节点列l1中全部节点的顺序,依次对节点a和节点b编号,获得节点a的初始值1、节点b的初始值2,即获得每个第一前节点的初始值。
88.步骤s208-1-7,对于第一待定节点列中的每个第一节点,获取与第一节点关联的全部第一前节点的初始值并计算平均值,将平均值作为第一节点的重心值,得到第一待定节点列中每个第一节点的第一重心值;如图6中,虚线连接的两个节点互为关联节点。基于该图所示的节点列l1和节点列l2中节点的关系,可以得到如下表3所示的每个第一节点的第一重心值。
89.表3第一节点关联的全部第一前节点及其初始值第一重心值
节点c节点a(1)1节点d节点a(1)、节点b(2)1.5节点e节点b(2)2节点f节点a(1)1在表3中,节点列l2中节点c、d、e和f的第一重心值,分别为1、1.5、2和1,即得到第一待定节点列中每个第一节点的第一重心值。
90.步骤s208-1-9,按照第一重心值从小到大的顺序,对第一待定节点列中的全部第一节点排序,获得第一待定节点列中全部第一节点的顺序;基于上述示例中,根据节点列l2中每个节点的第一重心值,按照第一重心值从小到大的顺序,对节点列l2中的全部节点排序,获得节点l2中全部节点的顺序:第一个是节点c、第二个是节点f、第三个是节点d、第四个是节点e,即第一待定节点列中全部第一节点的顺序。可以理解的是,对于第一重心值相同的第一节点,可以对其依次排列。
91.步骤s208-1-11,依次遍历每个第一节点列,获得每个第一节点列中全部节点的顺序。
92.基于上述示例中获得节点列l2中全部节点的顺序的方式,按照类似的方式,根据节点列l2中全部节点的顺序,获得节点列l3中全部节点的顺序,然后根据节点列l3中全部节点的顺序,获得节点列l4中全部节点的顺序。
93.为了便于理解,本发明实施例还提供了获得节点列l3和l4中全部节点的顺序的示例图,如图7和图8。
94.针对上述步骤s208-3,本发明实施例提供了一种可能的实现方式,其中步骤s208-3包括以下步骤:步骤s208-3-1,依次将每个第二节点列作为第二待定节点列;步骤s208-3-3,将第二待定节点列的前一个节点列作为第二前序节点列;为了便于理解,请参阅图9,第二待定节点列为节点列l3,其包括节点g、h和i;第二前序节点列为节点列l4,其包括节点j。
95.步骤s208-3-5,根据第二前序节点列中全部节点的顺序,依次对第二前序节点列中的每个第二前节点编号,获得每个第二前节点的初始值;如图9中,节点列l4的顺序为第一个是节点j,获得节点j的初始值1,即获得每个第二前节点的初始值。
96.步骤s208-3-7,对于第二待定节点列中的每个第二节点,获取与第二节点关联的全部第二前节点的初始值并计算平均值,将平均值作为第二节点的重心值,得到第二待定节点列中每个第二节点的第二重心值;如图9中,虚线连接的两个节点互为关联节点。基于该图所示的节点列l3和节点列l4中节点的关系,可以得到节点列l3中节点g、h和i第二重心值,分别为1、1和1,即得到第二待定节点列中每个第二节点的第二重心值。
97.步骤s208-3-9,按照第二重心值从小到大的顺序,对第二待定节点列中的全部第二节点排序,获得第二待定节点列中全部第二节点的顺序;基于上述示例中,根据节点列l3中每个节点的第二重心值,按照第二重心值从小到大的顺序,对节点列l3中的全部节点排序,获得节点l3中全部节点的顺序:第一个是节点
i、第二个是节点h、第三个是节点g,即获得第二待定节点列中全部第二节点的顺序。可以理解的是,对于第二重心值相同的第二节点,可以对其依次排列。
98.步骤s208-3-11,遍历每个第二节点列,获得每个第二节点列中全部节点的顺序。
99.基于上述示例中获得节点列l3中全部节点的顺序的方式,按照类似的方式,根据节点列l3中全部节点的顺序,获得节点列l2中全部节点的顺序,然后节点列l2中全部节点的顺序,获得节点列l1中全部节点的顺序。
100.为了便于理解,本发明实施例还提供了获得节点列l2和l1中全部节点的顺序的示例图,如图10 和图11。
101.若预设条件是第一预设条件,针对上述步骤s208-7,本发明实施例提供了一种可能的实现方式,其中步骤s208-7包括以下步骤:在介绍具体步骤之前,根据获得的每个节点列中全部节点的顺序,可以得到每个节点的第二序号。基于上述示例中获得的节点列l1至l4中全部节点的顺序,得到如下表4所示的节点a至j的第二序号。
102.表4
节点列l1(第二序号)节点列l2(第二序号)节点列l3(第二序号)节点列l4(第二序号)节点a(1)节点f(1)节点i(1)节点j(1)节点b(2)节点c(2)节点h(2)节点d(3)节点g(3)节点e(4)
步骤s208-7-1,根据多个节点,获得多个节点组;节点组包括两个互为关联节点的节点,节点组中两个节点的列编号相邻;在本实施例中,可以根据每个节点的列编号及其关联节点,将多个节点划分为多个节点组,每个节点组中的两个节点互为关联节点且其列编号相邻。
103.步骤s208-7-3,从多个节点组中获取任意一个节点组作为目标节点组;在本实施例中,对于每个节点组均执行步骤s208-7-5至s208-7-9,为便于理解,以目标节点组作为示例进行说明。
104.步骤s208-7-5,根据目标节点组中每个目标节点的列编号和第二序号,确定每个目标节点在预设坐标系中的横坐标和纵坐标,获得目标节点组中两个目标节点的坐标;在本实施例中,显示界面包括预设坐标系。
105.对于目标节点组中的每个目标节点,可以根据该目标节点的列编号和第一预设关系,获得该目标节点在预设坐标系中的横坐标;该第一预设关系表示列编号和横坐标的对应关系。
106.根据该目标节点的行编号和第二预设关系,获得该目标节点在预设坐标系中的纵坐标;该第二预设关系表示行编号和纵坐标的对应关系。即获得该目标节点的坐标,得到目标节点组中两个目标节点的坐标。
107.步骤s208-7-7,根据目标节点组中两个目标节点的坐标,获得目标节点组对应的线段函数;在本实施例中,可以根据目标节点组中两个目标节点的坐标,获得目标节点组在该预设坐标系中对应的线段函数。需要说明的是,目标节点组对应的线段函数不包含两个
目标节点的坐标。
108.步骤s208-7-9,遍历每个节点组,获得每个节点组对应的线段函数;在本实施例中,对于每个节点组按照上述步骤,则可以得到每个节点组对应的线段函数。需要说明的是,每个线段函数不包含其对应的节点组中两个节点的坐标。
109.步骤s208-7-11,根据全部线段函数,计算交点的个数;步骤s208-7-13,判断交点的个数是否为零;在本实施例中,根据一个节点组得到一个对应的线段函数,基于全部节点组则可以得到全部的线段函数;根据全部的线段函数,计算交点的个数;然后判断交点的个数是否为零,若为零,则执行步骤s208-7-15a;若不为零,则执行步骤s208-7-15b。
110.步骤s208-7-15a,则全部节点的第二序号满足预设条件;步骤s208-7-15b,全部节点的第二序号未满足预设条件。
111.基于上述表4中节点a至节点j的第二序号,按照上述步骤,得到全部的第二序号满足预设条件,则将上述表4中每个节点的第二序号作为其行编号。基于节点a至j的列编号和行编号,可以得到如下表5中所示的数据。
112.表5节点abcdefghij列编号1122223334行编号1223413211根据表5中每个节点的列编号和行编号,确定出每个节点在显示界面的位置,并将每个节点与其关联节点连接,获得这多个节点之间的关联关系如图12。
113.可选地,为了提高美观性,可以基于节点间的相对位置,对节点的纵坐标进行调整和优化,得到如图13所示的这多个节点之间的关联关系。
114.在图12和图13中,对于节点b和节点j为了保证其连接线不与其他连接点相交,则可以越过列编号为2和3的中间节点,将节点b和节点j进行连接。
115.为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种数据分析可视化装置的实现方式。请参阅图14,图14为本发明实施例提供的一种数据分析可视化装置300的功能模块图。需要说明的是,本实施例所提供的数据分析可视化装置300,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该数据分析可视化装置300包括:获取模块310,用于根据数据经分析处理后的多个节点,获得多个节点序列;其中,每个节点均存在与其关联的关联节点;节点序列中任意两个相邻的节点互为关联节点,节点序列表示分析路径;处理模块330,用于对于每个节点,根据节点在其所属的每个节点序列中的顺序获得节点的列编号,得到每个节点的列编号;根据每个节点的列编号,获得多个节点列;节点列中全部节点的列编号相同;对每个节点列中的全部节点排序,确定每个节点在其所属的节点列中的顺序,得到每个节点的行编号;根据每个节点的列编号和行编号,确定每个节点在显示界面中的位置;显示模块350,用于按照每个节点在显示界面中的位置,将每个节点与其关联节点连接,显示多个节点的关联关系。
116.可选地,处理模块330模块具体用于:根据节点在其所属的每个节点序列中的顺序,获得节点在其所属的每个节点序列中的第一序号;从节点的全部第一序号中选取最大的第一序号作为节点的列编号。
117.可选地,处理模块330模块具体用于:按照列编号从小到大的顺序,根据最小节点列中全部节点的顺序,依次获得每个第一节点列中全部节点的顺序;其中,最小节点列与最小列编号对应,第一节点列与除最小列编号以外的第一列编号对应;按照列编号从大到小的顺序,根据最大节点列中全部节点的顺序,依次获得每个第二节点列中全部节点的顺序;其中,最大节点列与最大列编号对应,第二节点列与除最大列编号以外的第二列编号对应;根据每个节点列中全部节点的顺序,确定每个节点其在其所属的节点列中的顺序,得到每个节点的第二序号;判断全部节点的第二序号是否满足预设条件;若是,则将每个节点的第二序号作为每个节点的行编号;若否,则重复执行上述步骤直至全部节点的第二序号满足预设条件。
118.可选地,处理模块330模块具体用于:依次将每个第一节点列作为第一待定节点列;将第一待定节点列的前一个节点列作为第一前序节点列;根据第一前序节点列中全部节点的顺序,依次对第一前序节点列中的每个第一前节点编号,获得每个第一前节点的初始值;对于第一待定节点列中的每个第一节点,获取与第一节点关联的全部第一前节点的初始值并计算平均值,将平均值作为第一节点的重心值,得到第一待定节点列中每个第一节点的第一重心值;按照第一重心值从小到大的顺序,对第一待定节点列中的全部第一节点排序,获得第一待定节点列中全部第一节点的顺序;依次遍历每个第一节点列,获得每个第一节点列中全部节点的顺序。
119.可选地,处理模块330模块具体用于:依次将每个第二节点列作为第二待定节点列;将第二待定节点列的前一个节点列作为第二前序节点列;根据第二前序节点列中全部节点的顺序,依次对第二前序节点列中的每个第二前节点编号,获得每个第二前节点的初始值;对于第二待定节点列中的每个第二节点,获取与第二节点关联的全部第二前节点的初始值并计算平均值,将平均值作为第二节点的重心值,得到第二待定节点列中每个第二节点的第二重心值;按照第二重心值从小到大的顺序,对第二待定节点列中的全部第二节点排序,获得第二待定节点列中全部第二节点的顺序;遍历每个第二节点列,获得每个第二节点列中全部节点的顺序。
120.可选地,处理模块330模块具体用于:根据多个节点,获得多个节点组;节点组包括两个互为关联节点的节点,节点组中两个节点的列编号相邻;从多个节点组中获取任意一个节点组作为目标节点组;根据目标节点组中每个目标节点的列编号和第二序号,确定每个目标节点在预设坐标系中的横坐标和纵坐标,获得目标节点组中两个目标节点的坐标;根据目标节点组中两个目标节点的坐标,获得目标节点组对应的线段函数;遍历每个节点组,获得每个节点组对应的线段函数;根据全部线段函数,计算交点的个数;判断交点的个数是否为零;若是,则全部节
点的第二序号满足预设条件;若否,则全部节点的第二序号未满足预设条件。
121.本发明实施例还提供了一种电子设备,包括处理器120和存储器130,存储器130存储有计算机程序,处理器执行计算机程序时,实现上述实施例揭示的数据分析可视化方法。
122.本发明实施例还提供了一种存储介质,其上存储有计算机程序,该计算机程序被处理器120执行时实现本发明实施例揭示的数据分析可视化方法。
123.综上所述,本发明实施例提供了一种数据分析可视化方法、装置、电子设备和存储介质,通过先根据数据经分析处理后的多个节点且每个节点均存在与其关联的关联节点,获得多个表示分析路径的节点序列;然后对于每个节点,根据节点在其所属的每个节点序列中的顺序获得节点的列编号,得到每个节点的列编号;然后根据每个节点的列编号,获得多个节点列且每个节点列中全部节点的列编号相同;再对每个节点列中的全部节点排序,确定每个节点在其所属的节点列中的顺序,得到每个节点的行编号;最后根据每个节点的列编号和行编号,确定每个节点在显示界面中的位置并将每个节点与其关联节点连接,显示多个节点的关联关系。从而对数据的分析处理过程实现了可视化。并且基于节点唯一的列编号和行编号,避免了节点重复展示,可以更加直观地展示节点之间的关系。进而保证了节点间关系展示的正确性和提高了数据分析处理的效率。
124.在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
125.另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
126.所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
127.以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1