一种图表组件选择方法和数据可视化设备与流程

未命名 08-05 阅读:164 评论:0


1.本技术涉及数据可视化技术领域,尤其涉及一种图表组件选择方法和数据可视化设备。


背景技术:

2.数据可视化可以直观、准确的进行数据表的可视化呈现,让相关行业的工作者基于专业知识进行数据分析,挖掘数据价值,以判断决策利弊,驱动业务成长。
3.当前的数据可视化的工具中,在获取数据表后(数据表包括多列数据,每一列数据对应一个变量),用户可以通过代码或手动将数据表的变量拖动至预设的槽位(即槽位填充),数据可视化的工具即可推荐图表组件,或直接绘制数据表的图表。
4.但是,槽位填充的过程以及输入图表主题对用户的数据分析方面的相关专业技能或知识具有一定的要求,不具有数据分析方面的相关专业技能或相关知识的非专业用户在使用数据可视化的工具时,可能无法选择合适的图表组件,从而无法绘制合适的图表,降低数据分析的效率,这提高了非专业用户的学习成本。


技术实现要素:

5.本技术实施例提供了一种图表组件选择方法和数据可视化设备,用于自动化选择图表组件。
6.本技术第一方面提供了一种图表组件选择方法,通过确定数据表的n个变量(n为正整数)中各个变量的数据类型,并根据n个变量中各个变量的数据类型,从图表组件库中选择图表组件,图表组件用于可视化地展示数据表中n个变量对应的数据,无需用户以手动的方式将n个变量中各个变量拖动至对应的槽位,也无需用户输入图表主题,通过获取n个变量的数据类型来可视化地展示数据表中n个变量对应的数据,有效地降低了使用门槛,避免提高非专业用户的学习成本,极大地简化了用户选择图表组件的操作步骤,有效地提升了选择图表组件的效率。
7.在一些可行的实现方式中,图表组件库中包括多个图表组件,分别可以为条形图(bar)、线形图(line)、同种型图(iso type)、地图(map)、散点图(scat ter)、饼状图(pie)、面积图(area)、气泡图(bubble)、文本图(text)等等,此处不做限定。
8.在一些可能的实现方式中,所述方法还提供变量配置接口,所述变量配置接口用于接收用户从所述多个变量中选择所述n个变量,使得用户可以根据数据分析的需要从多个变量中选择所需要的n个变量。
9.在一些可能的实现方式中,每一个槽位对应至少一个变量。在一些可行的实现方式中,n个变量映射到p个槽位中可以为多对一,也可以一对一,也可以0对一,此处不做限定。也就是说,n个变量中任意变量必然有所映射的槽位,n个变量中可以存在2个或以上的变量映射到相同的槽位,但是可能存在有槽位并没有变量映射到。需要说明的是,若一个或多个变量映射至一个槽位中,那么该一个或多个变量即为该槽位的槽位信息;若一个槽位
没有任何变量映射到,那么该槽位的槽位信息为空(null)。
10.在一些可能的实现方式中,槽位可以为维度、度量或图例。
11.在一些可能的实现方式中,数据可视化设备可以根据获取数据表,确定数据表中n个变量的数据乐行。
12.在一些可能的实现方式中中,数据可视化设备可以根据所述n个变量中各个变量的数据类型,从图表组件库中选择图表组件的步骤中,可以为根据槽位映射规则和所述n个变量中各个变量的数据类型,将所述n个变量映射至p个槽位中(其中每一个变量对应一个槽位,其中,p为正整数),然后根据所述p个槽位中各个槽位对应的变量的数据类型,从所述图表组件库中选择所述图表组件,无需用户通过代码或手动实现槽位填充,也无需要求用户具有相关技能或指示,无学习成本。
13.在一些可能的实现方式中,所述槽位映射规则包括所述n个变量中各个变量的数据类型与所述p个槽位中各个槽位对应的数据类型的对应关系,从而实现了自动化的槽位填充。在一些可能的实现方式中,在所述根据所述p个槽位中各个槽位对应的变量的数据类型,从所述图表组件库中选择所述图表组件的步骤中,可以为根据决策树模型和所述p个槽位中各个槽位对应的变量的数据类型,从所述图表组件库中选择所述图表组件,从而实现了选择图表组件。
14.在一些可能的实现方式中,所述p个槽位中各个槽位分别对应所述图表组件中的横轴或纵轴,从而使得p个槽位的各个槽位的变量的数据类型体现在图表组件的横轴或纵轴上,实现绘制所需要的图表。
15.在一些可能的实现方式中,当同一个槽位包括多个变量时,所述多个变量的数据类型相同,从而实现了一个槽位对应多个变量,使得多于2个维度的图表可以实现,增进了槽位映射规则的可用性和简洁性。
16.在一些可能的实现方式中,所述数据类型为数值或字符串,其中,所述数值为浮点数或整型数,所述字符串为时间、分类或地图,从而提供了更丰富的数据类型,以使得可以对应更丰富的图表组件。
17.第二方面,本技术提供一种数据可视化设备,所述数据可视化设备用于执行前述第一方面中任一项所述的方法。
18.第三方面,本技术提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面或第三方面中任一项所述的方法。
19.本技术第四方面提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中;设备的至少一个处理器可以从计算机可读存储介质读取该计算机执行指令,至少一个处理器执行该计算机执行指令使得设备实施上述第一方面或者第一方面的任一种可能的实现方式所提供的方法。
20.本技术第五方面提供一种通信设备,该通信设备可以包括至少一个处理器、存储器和通信接口。至少一个处理器与存储器和通信接口耦合。存储器用于存储指令,至少一个处理器用于执行该指令,通信接口用于在至少一个处理器的控制下与其他通信设备进行通信。该指令在被至少一个处理器执行时,使至少一个处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
21.本技术第六方面提供了一种芯片系统,该芯片系统包括处理器,用于支持数据可视化设备实现上述第一方面或第一方面任意一种可能的实现方式中所涉及的功能。
22.在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存数据可视化设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
23.其中,第二至第六方面或者其中任一种可能实现方式所带来的技术效果可参见第一方面或第一方面不同可能实现方式所带来的技术效果,此处不再赘述。
附图说明
24.图1-1为本技术实施例提供的一种数据可视化设备的结构示意图;
25.图1-2为本技术实施例提供的数据可视化设备为家用电脑的结构示意图;
26.图2-1为本技术实施例提供的一种图表组件选择方法的流程示意图;
27.图2-2为本技术实施例提供的决策树的示意图;
28.图2-3为本技术实施例中plotly chart studio中的图表的纲要的示意图;
29.图2-4为本技术实施例中通过用户的操作生成图表的示意图;
30.图2-5为本技术实施例中生成的图表的示意图;
31.图3为本技术实施例提供的一种数据可视化设备的结构示意图;
32.图4为本技术实施例提供的一种通信设备的结构示意图。
具体实施方式
33.本技术实施例提供了一种图表组件选择方法和数据可视化设备,用于自动化选择图表组件。
34.下面结合附图,对本技术的实施例进行描述。
35.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本技术的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
36.本技术实施例可应用于如图1-1所示的数据可视化设备100中,数据可视化设备100包括处理模块110、显示模块120、存储模块130、收发模块140和输入模块150(例如键盘、鼠标、触摸屏等,此处不做限定)。
37.处理模块110是数据可视化设备100的控制中心,利用各种接口和线路连接数据可视化设备100的各个部分,通过运行或执行存储在存储模块130内的软件程序和/或模块,以及调用存储在存储模块130内的数据,执行数据可视化设备100的各种功能和处理数据,从而对数据可视化设备100进行整体监控。可选的,处理模块110可包括一个或多个处理单元;优选的,处理模块110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理模块110中。
38.显示模块120可用于显示由用户输入的信息或提供给用户的信息以及数据可视化设备100的各种界面。显示模块120可包括显示面板,可选的,可以采用液晶显示器(liquid crystal display,lcd)、有机发光二极管(organic light-emitting diode,oled)等形式来配置显示面板。进一步的,触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理模块110以确定触摸事件的类型,随后处理模块110根据触摸事件的类型在显示面板上提供相应的视觉输出。
39.存储模块130可以包括只读存储器和随机存取存储器,并向处理模块110提供指令和数据。存储模块130的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,nvram)。存储模块130存储有处理器和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。
40.收发模块140可用于接收输入的数字或字符信息,以及产生与数据可视化设备100的相关设置以及功能控制有关的信号输入。收发模块140可用于通过第一接口输出数字或字符信息;收发模块140还可用于通过第一接口向磁盘组发送指令,以修改磁盘组中的数据;收发模块140还可以包括显示屏等显示设备。
41.输入模块150可用于接收输入的数字或字符信息,以及产生与数据可视化设备100的用户设置以及功能控制有关的键信号输入。具体地,输入模块150可包括触控面板以及其他输入设备。触控面板,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理模块110,并能接收处理模块110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板。除了触控面板,输入模块150还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
42.在一些可能的实现方式中,数据可视化设备100可以为终端设备也可以为服务器,此处不做限定。
43.本实施例中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,终端以及服务器可以连接组成区块链网络,本技术在此不做限制。
44.其中,终端设备可以用户设备(user equipment,ue)、移动台(mobile station,ms)、移动终端(mobile terminal,mt)等。终端设备可以是手机(mobile phone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtual reality,vr)终端设备、增强现实(augmented reality,ar)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、
智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本技术的实施例对终端设备所采用的具体技术和具体设备形态不做限定。
45.例如,数据可视化设备100是家用电脑(终端设备),如图1-2所示,数据可视化设备100的显示模块120可以为显示器,输入模块150可以为键盘和/或鼠标,处理模块110、存储模块130、收发模块140可以集成在家用电脑的主机中。
46.当前的数据可视化的工具中,在获取数据表后(数据表包括多列数据,每一列数据对应一个变量),用户可以通过代码或手动将数据表的变量拖动至预设的槽位(即槽位填充),数据可视化的工具即可推荐图表组件,或直接绘制数据表的图表。在当前的一些数据可视化的工具中,当用户进行了槽位填充后,还需要输入图表主题,数据可视化的工具根据图表主题和一个或多个槽位中各个槽位的变量的数据类型推荐图表组件。
47.具体的,图表主题和一个或多个槽位中各个槽位的变量的数据类型到图表组件的对应关系,可以通过统计已有的图表来确定。需要说明的是,已有的图表是用户结合经验和需要,根据图表主题和一个或多个槽位中各个槽位的变量的数据类型确定图表组件,并根据图表组件绘制而得到的图表。
48.具体的,如表1所示,为维度、度量和图表主题到对应的图表组件的统计信息,即不同的图表主题和槽位(维度、度量)下的变量的数据类型的组合下,统计的多种不同的图表组件的次数或频率。例如,维度为分类/时间(c/t),度量为数值(n),图表主题为差异(difference),所对应的条形图(bar)被选择的次数为2次。
49.基于表1的统计信息,用户在数据可视化的工具中进行槽位填充(即在维度和度量中分别填入数据类型)后,再填入图表主题,数据可视化的工具即可根据图表主题和一个或多个槽位中各个槽位的变量的数据类型确定对应的一个或多个图表组件。具体的,数据可视化的工具可以根据表1选择图表主题和一个或多个槽位中各个槽位的变量的数据类型的组合下被推荐次数或频率最多的一个或多个图表组件。例如,用户在维度中填入或选择分类/时间(c/t),在度量中填入或选择数值(n),再在图表主题中填入或选择差异(difference),数据可视化的工具可以选择线形图(line)作为推荐的图表组件。
50.表1
[0051][0052]
但是,槽位填充的过程以及输入图表主题对用户的数据分析方面的相关专业技能或知识具有一定的要求,不具有数据分析方面的相关专业技能或相关知识的非专业用户在使用数据可视化的工具时,可能无法选择合适的图表组件,从而无法绘制合适的图表,降低数据分析的效率,这提高了非专业用户的学习成本。
[0053]
为此,本技术提出了一种图表组件选择方法和数据可视化设备,用于自动化选择图表组件。在本技术中,通过确定数据表的n个变量(n为正整数)中各个变量的数据类型,并根据n个变量中各个变量的数据类型,从图表组件库中选择图表组件,图表组件用于可视化地展示数据表中n个变量对应的数据,无需用户以手动的方式将n个变量中各个变量拖动至对应的槽位,也无需用户输入图表主题,通过获取n个变量的数据类型来可视化地展示数据表中n个变量对应的数据,有效地降低了使用门槛,避免提高非专业用户的学习成本,极大地简化了用户选择图表组件的操作步骤,有效地提升了选择图表组件的效率。
[0054]
前述实施例介绍了本技术提供给的数据可视化设备,接下来介绍基于该数据可视化设备执行的图表组件选择方法,请参阅图2-1所示,本技术实施例提供的图表组件选择方法主要包括如下步骤:
[0055]
201、数据可视化设备获取数据表,数据表中包括多个变量。
[0056]
在一些可行的实现方式中,用户可以在数据可视化设备中输入或导入数据表,数据表包括m个变量及其数据信息,m为正整数。在一些可行的实现方式中,数据可视化设备也可以从其他设备或网络上获取数据表,此处不做限定。
[0057]
需要说明的是,数据表包括多个变量,多个变量中各个变量分别对应一个或多个数据信息。例如,如表2所示的数据表包括4个变量,分别是主办城市、年份、中国金牌数、中国金牌排名。
[0058]
表2
[0059]
主办城市年份中国金牌数中国金牌排名亚特兰大1996164悉尼2000283雅典2004322北京2008511伦敦2012382里约2016263
[0060]
202、数据可视化设备提供变量配置接口,变量配置接口用于接收用户从多个变量中选择n个变量,其中,n为正整数。
[0061]
在一些可行的实现方式中,数据可视化设备可以提供变量配置接口,变量配置接口用于接收用户从多个变量中选择n个变量。示例性的,在数据可视化设备获取了数据表后,用户可以通过变量配置接口,根据数据分析的需求进行操作,从多个变量中选择n个变量,其中,n为正整数,n个变量的数量小于等于多个变量的数量。那么,数据可视化设备基于用户的操作从数据表的多个变量中确定n个变量。
[0062]
举例说明,用户在如表2所示的数据表中选择变量“主办城市”、“年份”和“中国金牌数”,得到如表3所示的数据表。
[0063]
表3
[0064]
主办城市年份中国金牌数亚特兰大199616悉尼200028雅典200432北京200851伦敦201238里约201626
[0065]
203、数据可视化设备确定数据表的n个变量中各个变量的数据类型。
[0066]
在本技术实施例中,变量的数据类型为该变量对应的数据信息的数据类型。在一些可行的实现方式中,数据类型可以为数值或字符串,其中,数值可以为浮点数(float,f)或整型数(int,i),字符串可以为时间(temporal,t)、分类(categorical,c)或地图(map,m),此处不做限定。以表3为例,变量“主办城市”的数据类型为字符串(分类c或地图m);变量“年份”的数据类型为字符串(时间t)或数值(整型数i);变量“中国金牌数”的数据类型为数值(浮点数f/整型数i)。
[0067]
需要说明的是,上述步骤201-202是可选的。也就是说,用户可以仅在数据可视化设备中输入n个数据类型,或者数据可视化设备在其他设备或网络上获取n个数据类型,作为数据表的n个变量中各个变量的数据类型,而无需数据可视化设备获取数据表,也无需提供变量配置接口,以接收用户从多个变量中选择n个变量。此处不做限定。
[0068]
204、数据可视化设备根据n个变量中各个变量的数据类型,从图表组件库中选择图表组件,图表组件用于可视化地展示数据表中n个变量对应的数据。
[0069]
在一些可行的实现方式中,数据可视化设备可以根据n个变量中各个变量的数据类型映射到p个槽位,然后根据p个槽位中各个槽位的数据类型选择图表组件,下面通过步
骤2041-2042进行详细描述:
[0070]
2041、数据可视化设备根据槽位映射规则和n个变量中各个变量的数据类型,将n个变量映射至p个槽位中,其中每一个变量对应一个槽位,其中,p为正整数。
[0071]
需要说明的是,p个槽位中各个槽位分别对应图表组件中的横轴、纵轴或图例等,当基于选择的图表组件绘制图表时,该图表中横轴和/或纵轴为p个槽位中至少一个槽位的槽位信息,即该槽位对应的变量的数据信息。例如,槽位可以为维度、度量和图例,其中,维度和图例对应变量的数据信息可以作为图表的横轴上的数据信息,度量对应变量的数据信息可以作为图表的纵轴上的数据信息。
[0072]
在一些可行的实现方式中,槽位映射规则包括n个变量中各个变量的数据类型与p个槽位中各个槽位对应的数据类型的对应关系。
[0073]
在一些可行的实现方式中,n个变量映射到p个槽位中可以为多对一,也可以一对一,也可以0对一,此处不做限定。也就是说,n个变量中任意变量必然有所映射的槽位,n个变量中可以存在2个或以上的变量映射到相同的槽位,但是可能存在有槽位并没有变量映射到。需要说明的是,若一个或多个变量映射至一个槽位中,那么该一个或多个变量即为该槽位的槽位信息;若一个槽位没有任何变量映射到,那么该槽位的槽位信息为空(null)。
[0074]
例如,若p=2,即槽位的数量有2个,2个槽位分别为槽位1、槽位2。若n=3,即变量的数量有3个,3个变量分别为变量1、变量2、变量3。其中,变量1映射到槽位1,变量2和变量3分别映射到槽位2。那么,槽位1的槽位信息为变量1,槽位2的槽位信息为变量2和变量3。
[0075]
又例如,若p=3,即槽位的数量有3个,3个槽位分别为槽位1、槽位2、槽位3。若n=2,即变量的数量有2个,分别为变量1和变量2。其中,变量1映射到槽位1,变量2映射到槽位2,无变量映射到槽位3。那么,槽位1的槽位信息为变量1,槽位2的槽位信息为变量2,槽位3的槽位信息为空(null)。
[0076]
在一些可行的实现方式,特定的槽位对应特定的一种或多种数据类型。举例说明,若p=3,即3个槽位,分别为槽位1、槽位2和槽位3。其中,槽位1名为维度(attribute),槽位2名为度量(measure),槽位3名为图例(legend)。其中,维度对应数值(浮点数f/整型数i)或字符串(分类c/地图m/时间t),度量对应数值(浮点数f/整型数i),图例对应字符串(分类c/地图m)。
[0077]
例如,若n=3,p=3,即3个变量,3个槽位。3个变量分别为:主办城市、年份、中国金牌排名。这3变量的数据类型分别为:字符串(分类c/地图m)(主办城市)、字符串(时间t/分类c/地图m)(年份)、数值(浮点数f/整型数i)(中国金牌排名)。3个槽位分别为:维度、度量和图例。数据可视化设备可以基于槽位映射规则,根据这3个变量中各个变量的数据类型,确定3个变量中各个变量所映射的槽位,得到3个槽位信息。
[0078]
又例如,n=4,p=3,即4个变量,3个槽位。4个变量分别为:主办城市、年份、中国金牌数、中国金牌排名。这4变量的数据类型分别为:字符串(分类c/地图m)(主办城市)、字符串(时间t/分类c/地图m)(年份)、数值(浮点数f/整型数i)(中国金牌排名)、数值(浮点数f/整型数i)(中国金牌排名)。3个槽位分别为:维度、度量和图例。数据可视化设备可以基于槽位映射规则,根据这4个变量中各个变量的数据类型,确定4个变量中各个变量所映射的槽位,得到3个槽位信息。
[0079]
在一些可行的实现方式中,该槽位映射规则的输入为变量的数量n和各个变量的
数据类型,输出为该p个槽位中各个槽位对应的数据类型。那么,数据可视化设备可以首先确定变量的数量n,再确定该n个变量中各个变量的数据类型,得到n个数据类型,接着根据该槽位映射规则确定该n个数据类型中各个数据类型对应的该p个槽位中的一个槽位,得到该p个槽位中各个槽位对应的数据类型,以该p个槽位中各个槽位对应的数据类型所对应的变量为槽位信息,得到该p个槽位信息。
[0080]
举例说明,如表4所示为表格形式的槽位映射规则。
[0081]
表4
[0082][0083]
需要说明的是,表4中的c指分类,m指地图,t指时间,f指浮点数,i指整型数。另外,“/”是或的关系,例如“f/i”是指浮点数f或整型数i。“+”是指两个变量的数据分类型分别指代。例如,“f/i/c/m/t+f/i”是指其中一个变量的数据类型为f/i/c/m/t+f/i,另一个变量的数据类型为f/i。另外,“*”指乘号,例如“2*f/i”指的是2个变量的数据类型均为f/i。另外,m、n分别指任意正整数。
[0084]
在本技术实施例中,数据可视化设备可以首先确定n个变量中各个变量的数据类型,再基于如表4所示的槽位映射规则和n个变量中各个变量的数据类型确定n个变量中各个变量所映射的槽位。
[0085]
举例说明,若n=3,即用户选择了3个变量,分别为主办城市、年份、中国金牌排名。由于变量的数量为3,对应c/m/t+f/i+c/m、2*c/m+f/i或3*f/i的情况。数据可视化设备可以确定3个变量的数据类型分别是:地图m或分类c(主办城市)、时间t或整型数i(年份)、浮点数或整型数i(中国金牌排名)。适用于c/m/t+f/i+c/m的情况,其中,年份为c/m/t,中国金牌排名为f/i,主办城市为c/m。接着,可以确定的槽位“维度”对应c/m/t对应的“年份”,槽位“度量”对应f/i对应的“中国金牌排名”,槽位“图例”为c/m对应的“主办城市”。
[0086]
需要说明的是,上述表4的槽位映射规则仅为示例,在一些可行的实现方式,对槽位映射规则可以为其他形式,此处不做限定。在一些可行的实现方式中,槽位映射规则可以是相关工作人员根据经验设置的,也可以通过大数据训练得到,此处不做限定。在一些可行的实现方式中,为了增加槽位映射规则的可用性和简洁性,在同一个槽位包括多个变量时,可以设置多个变量的数据类型相同。
[0087]
2042、数据可视化设备根据p个槽位中各个槽位对应的变量的数据类型,从图表组件库中选择图表组件。
[0088]
在一些可行的实现方式中,图表组件库中包括多个图表组件,分别可以为条形图(bar)、线形图(line)、同种型图(iso type)、地图(map)、散点图(scat ter)、饼状图(pie)、面积图(area)、气泡图(bubble)、文本图(text)等等,此处不做限定。
[0089]
在一些可行的实现方式中,数据可视化设备可以根据决策树模型和p个槽位中各个槽位对应的变量的数据类型,从图表组件库中选择图表组件。
[0090]
需要说明的是,决策树呈树形结构,决策树包括多层决策层,用于输入p个槽位信息,输出图表组件。数据可视化设备可以通过上一层决策层所选择的内容和下一层决策层对应的槽位信息(即槽位对应变量的数据类型)确定下一层的可选内容。在一些可行的实现方式中,决策树具有p+1层决策层,p层决策层中的各层决策层分别为p个槽位中的各个槽位,p层决策层中每1层决策层的可选内容为该层决策层对应槽位的数据类型,最后一层决策层的内容为可选的图表组件。
[0091]
举例说明,若p=3,即3个槽位,分别是维度、度量和图例。那么,决策树包括4层决策层,分别为维度、度量、图例和最后一层决策层。其中,第1层决策层为维度,第2层决策层为度量,第3层决策层为图例,第4层决策层为最后一层决策层,用于选择图表组件。
[0092]
如图2-2所示,为决策树的示意图。其中,维度对应第1层决策层,第1层决策层的内容包括地图m/分类c、时间t、时间t+地图m/分类c、浮点数f/整型数i、n*c/m或空(null)。例如,槽位“维度”对应的变量为“年份”,其数据类型属于时间t,那么第1层决策层的可选内容为时间t,即数据可视化设备可以在第1层决策层中选择了时间t。
[0093]
需要说明的是,数据可视化设备对于各层决策层中的选择可以是服从一定概率分布的随机选择。例如,对于第1层决策层的内容为地图m/分类c和时间t,数据可视化设备选择地图m/分类c的概率是60%,选择时间t的概率是40%。但是,对于第1层决策层的内容为时间t,由于只有一个可选项,数据可视化设备选择时间t的概率是100%。
[0094]
当数据可视化设备在第1层决策层中选择了内容后,可以根据所选择的内容(时间t)和第2层决策层对应的槽位“度量”确定的可选的内容。例如,若数据可视化设备在第1层决策层中选择了时间t,那么第2层决策层的内容包括空(null)或浮点数f/整型数i。而槽位“度量”对应的变量为“中国金牌数”,其数据类型属于浮点数f/整型数i,那么第2层决策层的内容只有一个可选项,为浮点数f/整型数i。
[0095]
当数据可视化设备在第2层决策层中选择了内容后,可以根据该内容和槽位“图例”确定第3层决策层的内容。例如,若数据可视化设备在第2层决策层中选择了浮点数f/整型数i,那么第3层决策层的可选内容为空(null)或分类c/地图m。若槽位“图例”对应的变量为“主办城市”,其数据类型属于分类c/地图m,那么第3层决策层的内容只有一个可选项,为分类c/地图m。
[0096]
当数据可视化设备在第3层决策层中选择了内容后,可以根据所选内容确定最后一层决策层的内容,即选择的图表组件。例如,若数据可视化设备在第3层决策层中选择了分类c/地图m,那么可以从分类c/地图m下的一个或多个图表组件中选择一个。例如,最后一层决策层中分类c/地图m下的一个或多个图表组件包括条形图(bar)、线形图(line)、同种型图(iso type),那么数据可视化设备可以根据预置的概率分布从中选择一个图表组件。例如,条形图(bar)、线形图(line)、同种型图(iso type)的被选概率分别是25%,20%,55%。例如,数据可视化设备基于前述概率分布选择了线形图(line)。
[0097]
需要说明的是,数据可视化设备或其他设备可以通过获取现有的数据来训练决策树。示例性的,可以通过下述步骤训练得到决策树:
[0098]
步骤1、数据可视化设备或其他设备从图表实例数据库中获取多个图表实例,该多个图表实例中各个图表实例包括一个或多个变量实例以及对应的一个或多个图表组件实例。
[0099]
当前,在市面上有一些产品可以为用户提供根据对针对数据信息的编辑服务,用户可以在这些产品上逐列编辑数据信息,该一列数据信息的主题相当于变量。而且,用户可以根据自己的需要为这些数据信息绘制图表,得到一个或多个变量实例以及对应的一个或多个图表组件实例,以实现数据可视化。那么,数据可视化设备或其他设备可以通过这些产品收集大量的变量和对应的图表组件,即图表实例数据库。
[0100]
例如,网络应用程序plotly chart studio,用户可以上传变量相关的数据信息并手动创建多种图表。
[0101]
步骤2、数据可视化设备或其他设备根据该槽位映射规则确定该多个图表实例中各个图表实例的一个或多个变量实例对应的p个槽位信息实例。
[0102]
举例说明,如图2-3所示,plotly chart studio中的图表都有一个规范的纲要(schema),纲要(schema)中包含了每个可视化案例的两种数据结构:跟踪(traces)和布局(layout)。其中,跟踪(traces)用于记录可视化案例的数据信息,布局(layout)用于构成图表的标签和注释。示例性的,可以利用plotly chart studio中的ploty rest api指令中的/search和/plots查询每个图表的实例中图表组件和对应的变量的数目和变量的数据类型,然后将收集得到的变量的数目和数据类型根据前述的槽位映射规则确定p个槽位信息,得到从图表实例数据库中获取多个图表实例。
[0103]
例如,所收集到每个图表的实例中图表组件和对应的变量的数目和数据类型,并以此生成p个槽位信息,记录为:{维度(c/t),度量(f/i),图例(c/m)}。并记录对应的图表的实例作为输出,得到的该多个图表实例中各个图表实例包括一个或多个变量实例以及对应的一个或多个图表组件实例。
[0104]
在一些可能的实现方式中,考虑到某些情况下,通过ploty rest api指令获取用于训练的信息未必能很好的识别多维度单度量,还是单维度多变量的情况,因此,在收集用于训练的信息后,可以进行了人工标注,以实现从基于槽位映射规则,实现根据变量的数量和数据类型,将变量映射到p个槽位信息中,增加数据集的准确性。
[0105]
步骤3、以该多个图表实例中各个图表实例对应的p个槽位信息实例为输入,该多个图表实例中各个图表实例的一个或多个图表组件实例为输出,进行训练得到该决策树。具体的训练过程,本技术不做限定。
[0106]
在一些可能的实现方式中,考虑到用于训练信息的不全面和偏差,可以加入了一些规则用于优化后续的决策树。示例性的,若用于训练的信息包含地理信息时,可以优先使用地图相关的图表组件。在一些可能的实现方式中,这些规则可以包括:当用于训练的信息中有地图相关的图表组件时,若与地图相关的数据类型的变量的数量大于等于2时,推荐地理相关的图表组件;当用于训练的信息中指示的数据类型全为字符串时,推荐的图表组件为桑基图(sankey)或卡片图;当用于训练的信息中指示的数据类型为时间(t)时,推荐的图表组件为线型图。
[0107]
在一些可行的实现方式中,对于实现数据可视化设备根据n个变量中各个变量的数据类型,从图表组件库中选择图表组件,也可以使用其他方法。例如,从图表实例中获取p个槽位信息实例和对应的图表组件实例,确定各种p个槽位信息实例的组合下,被使用频次最高的一个或多个图表组件实例,以此得到p个槽位信息实例的组合与图表组件的映射关系表。那么,数据可视化设备可以该映射关系表和p个槽位信息确定图表组件。
[0108]
205、数据可视化设备基于该图表组件和该n个变量中各个变量的数据信息绘制图表。
[0109]
在本技术实施例中,如图2-4所示,用户只需要在数据可视化设备中输入如表2所示的数据表,数据可视化设备可显示4个变量:主办城市、年份、中国金牌数、中国金牌排名。然后,用户在4个变量中选择3个变量,数据可视化设备即可根据3个变量基于槽位映射规则确定3个槽位(槽位),其中,变量“主办城市”映射到槽位“图例”,变量“年份”映射到槽位“度量”,变量“中国金牌数”映射到槽位“图例”。接着,数据可视化设备根据p个槽位,基于决策树选择图表组件。或者,数据可视化设备根据p个槽位,基于决策树选择多个图表组件,用户从中选择一个图表组件。最后,数据可视化设备根据图表组件和3个变量中各个变量的数据信息绘制图表,得到如图2-5所示的图表,用户即可根据图表进行数据分析。
[0110]
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
[0111]
为便于更好的实施本技术实施例的上述方案,下面还提供用于实施上述方案的相关装置。
[0112]
请参阅图3所示,本技术实施例提供的一种数据可视化设备300,可以包括:处理模块301,其中,
[0113]
处理模块301,用于确定数据表的n个变量中各个变量的数据类型,其中,n为正整数;
[0114]
处理模块301,还用于根据n个变量中各个变量的数据类型,从图表组件库中选择图表组件,图表组件用于可视化地展示数据表中n个变量对应的数据。
[0115]
在一些可能的实现方式中,数据可视化设备300还包括:
[0116]
变量配置接口302,用于接收用户从多个变量中选择n个变量。
[0117]
在一些可能的实现方式中,处理模块301,具体用于:
[0118]
根据槽位映射规则和n个变量中各个变量的数据类型,将n个变量映射至p个槽位中,其中每一个变量对应一个槽位,其中,p为正整数;
[0119]
根据p个槽位中各个槽位对应的变量的数据类型,从图表组件库中选择图表组件。
[0120]
在一些可能的实现方式中,处理模块301,具体用于:
[0121]
根据决策树模型和p个槽位中各个槽位对应的变量的数据类型,从图表组件库中选择图表组件。
[0122]
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本技术方法实施例基于同一构思,其带来的技术效果与本技术方法实施例相同,具体内容
可参见本技术前述所示的方法实施例中的叙述,此处不再赘述。
[0123]
本技术实施例还提供一种计算机存储介质,其中,该计算机存储介质存储有程序,该程序执行包括上述方法实施例中记载的部分或全部步骤。
[0124]
接下来介绍本技术实施例提供的一种通信设备,请参阅图4所示,通信设备400包括:
[0125]
接收器401、发射器402、处理器403和存储器404。在本技术的一些实施例中,接收器401、发射器402、处理器403和存储器404可通过总线或其它方式连接,其中,图4中以通过总线连接为例。
[0126]
存储器404可以包括只读存储器和随机存取存储器,并向处理器403提供指令和数据。存储器404的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,nvram)。存储器404存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
[0127]
处理器403控制通信设备的操作,处理器403还可以称为中央处理单元(central processing unit,cpu)。具体的应用中,通信设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
[0128]
上述本技术实施例揭示的方法可以应用于处理器403中,或者由处理器403实现。处理器403可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器403中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器403可以是通用处理器、数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器404,处理器403读取存储器404中的信息,结合其硬件完成上述方法的步骤。
[0129]
接收器401可用于接收输入的数字或字符信息,以及产生与通信设备的相关设置以及功能控制有关的信号输入,发射器402可包括显示屏等显示设备,发射器402可用于通过外接接口输出数字或字符信息。
[0130]
本技术实施例中,处理器403,用于执行前述数据可视化设备执行的图表组件选择方法。
[0131]
在另一种可能的设计中,当数据可视化设备为芯片时,包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使该终端内的芯片执行上述第一方面任意一项的无线报告信息的发送方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述终端内的位于所述芯片外部的存储
单元,如只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)等。
[0132]
其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,asic,或一个或多个用于控制上述方法的程序执行的集成电路。
[0133]
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本技术提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
[0134]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用cpu、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本技术而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、u盘、移动硬盘、rom、ram、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
[0135]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0136]
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。

技术特征:
1.一种图表组件选择方法,其特征在于,包括:确定数据表的n个变量中各个变量的数据类型,其中,n为正整数;根据所述n个变量中各个变量的数据类型,从图表组件库中选择图表组件,所述图表组件用于可视化地展示所述数据表中所述n个变量对应的数据。2.根据权利要求1所述方法,其特征在于,所述数据表中包括多个变量,所述确定数据表的n个变量中各个变量的数据类型之前,所述方法还包括:提供变量配置接口,所述变量配置接口用于接收用户从所述多个变量中选择所述n个变量。3.根据权利要求1或2所述方法,其特征在于,所述根据所述n个变量中各个变量的数据类型,从图表组件库中选择图表组件,包括:根据槽位映射规则和所述n个变量中各个变量的数据类型,将所述n个变量映射至p个槽位中,其中每一个变量对应一个槽位,其中,p为正整数;根据所述p个槽位中各个槽位对应的变量的数据类型,从所述图表组件库中选择所述图表组件。4.根据权利要求3所述方法,其特征在于,所述槽位映射规则包括所述n个变量中各个变量的数据类型与所述p个槽位中各个槽位对应的数据类型的对应关系。5.根据权利要求3或4所述方法,其特征在于,所述根据所述p个槽位中各个槽位对应的变量的数据类型,从所述图表组件库中选择所述图表组件,包括:根据决策树模型和所述p个槽位中各个槽位对应的变量的数据类型,从所述图表组件库中选择所述图表组件。6.根据权利要求3至5中任一项所述方法,其特征在于,所述p个槽位中各个槽位分别对应所述图表组件中的横轴或纵轴。7.根据权利要求2至6中任一项所述方法,其特征在于,当同一个槽位包括多个变量时,所述多个变量的数据类型相同。8.根据权利要求1至7中任一项所述方法,其特征在于,所述数据类型为数值或字符串,其中,所述数值为浮点数或整型数,所述字符串为时间、分类或地图。9.一种数据可视化设备,其特征在于,包括:处理模块,用于确定数据表的n个变量中各个变量的数据类型,其中,n为正整数;所述处理模块,还用于根据所述n个变量中各个变量的数据类型,从图表组件库中选择图表组件,所述图表组件用于可视化地展示所述数据表中所述n个变量对应的数据。10.根据权利要求9所述设备,其特征在于,所述设备还包括:变量配置接口,用于接收用户从所述多个变量中选择所述n个变量。11.根据权利要求9或10所述设备,其特征在于,所述处理模块,具体用于:根据槽位映射规则和所述n个变量中各个变量的数据类型,将所述n个变量映射至p个槽位中,其中每一个变量对应一个槽位,其中,p为正整数;根据所述p个槽位中各个槽位对应的变量的数据类型,从所述图表组件库中选择所述图表组件。12.根据权利要求11所述设备,其特征在于,所述处理模块,具体用于:根据决策树模型和所述p个槽位中各个槽位对应的变量的数据类型,从所述图表组件
库中选择所述图表组件。13.一种计算机可读存储介质,其特征在于,该计算机可读存储介质存储有程序,所述程序使得计算机设备执行如权利要求1至8中任一项所述的方法。14.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机执行指令,所述计算机执行指令存储在计算机可读存储介质中;设备的至少一个处理器从所述计算机可读存储介质中读取所述计算机执行指令,所述至少一个处理器执行所述计算机执行指令使得所述设备执行如权利要求1至8中任一项所述的方法。15.一种通信设备,其特征在于,所述通信设备包括至少一个处理器、存储器和通信接口;所述至少一个处理器与所述存储器和所述通信接口耦合;所述存储器用于存储指令,所述处理器用于执行所述指令,所述通信接口用于在所述至少一个处理器的控制下与其他通信设备进行通信;所述指令在被所述至少一个处理器执行时,使所述至少一个处理器执行如权利要求1至8中任一项所述的方法。16.一种芯片系统,其特征在于,所述芯片系统包括处理器和存储器,所述存储器和所述处理器通过线路互联,所述存储器中存储有指令,所述处理器用于执行如权利要求1至8中任一项所述的方法。

技术总结
本申请实施例公开了一种图表组件选择方法和数据可视化设备,用于自动化选择图表组件。本申请中,通过确定数据表的N个变量(N为正整数)中各个变量的数据类型,并根据N个变量中各个变量的数据类型,从图表组件库中选择图表组件,图表组件用于可视化地展示数据表中N个变量对应的数据,无需用户通过代码或手动的方式根据N个变量中各个变量拖动至对应的槽位,也无需用户输入图表主题,降低了使用门槛,避免提高非专业用户的学习成本,极大地简化了用户选择图表组件的操作步骤,有效地提升了选择图表组件的效率。图表组件的效率。图表组件的效率。


技术研发人员:徐科
受保护的技术使用者:华为云计算技术有限公司
技术研发日:2022.01.26
技术公布日:2023/8/4
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐