一种面向知识图谱的交互可视化方法、平台和系统与流程

专利2022-06-29  136


本发明属于计算机图像处理技术领域,尤其涉及一种面向知识图谱的交互可视化方法、平台和系统。



背景技术:

随着知识工程的发展,知识图谱的应用面越来越广,将知识图谱与生产结合的尝试越来越多。利用知识图谱,人们可以更加有效的观察事物的发展规律,从而调整自身决策。为了使得知识图谱更直观的展示信息,对其进行可视化是非常有必要的。

现有的知识图谱数据仅仅是基础的节点信息以及不同节点间的关系信息,无法直观、形象地表示图谱数据,不能有效展示节点间的拓扑结构,缺乏直观性。



技术实现要素:

为克服上述现有问题或者至少部分地解决上述问题,本发明实施例提供一种面向知识图谱的交互可视化方法、平台和系统。

根据本发明实施例的第一方面,提供一种面向知识图谱的交互可视化方法,所述方法在autovis平台上实现,所述方法包括:

autovis平台接收通过web前端输入的查询条件;

根据查询条件从知识图谱数据库中查询匹配的图数据,所述图数据包括基础节点信息和节点间的关系信息;

根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页,其中,所述可视化引擎安装于autovis平台上。

在上述技术方案的基础上,本发明实施例还可以作出如下改进。

可选的,所述根据查询条件从知识图谱数据库中查询匹配的图数据之后还包括:

根据所述图数据中的所述基础节点信息和节点间的关系信息,通过预设布局算法生成每一个节点的位置信息和不同节点间的边信息;

相应的,根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

根据所述每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

可选的,所述可视化引擎集成有vega组件;

所述根据所述每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

将每一个节点的位置信息、不同节点间的边信息和可视化配置输入vega组件,由vega组件生成包含可视化布局图的网页。

可选的,所述可视化配置以可视化配置文件实现,所述可视化配置文件中包括每一个节点和视觉符号之间的映射关系以及每一对节点和有向边之间的映射关系。

可选的,所述每一个节点和视觉符号之间的映射关系为节点的类型与视觉符号类型之间的对应关系,所述每一对节点和有向边之间的映射关系为每一对节点之间的关系类型与有向边类型之间的对应关系。

可选的,所述根据所述每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

根据每一个节点的位置信息、每一个节点对应的视觉符号、每一对节点对应的有向边,生成可视化布局图,所述可视化布局图中展示所有节点检的拓扑结构。

可选的,所述根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页之后还包括:

将生成的包含可视化布局图的网页显示于web前端。

根据本发明实施例的第二方面,提供了一种实现面向知识图谱的交互可视化的平台,所述平台为autovis平台,所述autovis平台上安装有可视化引擎;

所述autovis平台,用于根据查询条件从知识图谱数据库中查询匹配的图数据,所述图数据包括基础节点信息和节点间的关系信息;还用于根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

根据本发明实施例的第三方面,提供了一种面向知识图谱的交互可视化系统,包括web前端、autovis平台和知识图谱数据库,所述autovis平台上安装有可视化引擎,所述可视化引擎集成有vega组件;

所述web前端,用于接收输入的查询条件;

所述autovis平台,用于根据查询条件从知识图谱数据库中查询匹配的图数据,所述图数据包括基础节点信息和节点间的关系信息;

所述vega组件,用于根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

可选的,所述autovis平台还包括生成模块;

所述显示模块,用于将生成的包含可视化布局图的网页显示于web前端。

本发明实施例提供一种面向知识图谱的交互可视化方法、平台和系统,该方法通过autovis平台实现了知识图谱的可视化,使得知识图谱数据以更加直观、形象的方式展示;利用vega的特性,降低了代码复杂度,实现者不需要编写复杂的javascript代码来对绘图和用户操作进行响应。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的面向知识图谱的交互可视化方法整体流程示意图;

图2为本发明实施例提供的知识图谱的交互可视化系统整体结构示意图。

具体实施方式

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

在本发明的一个实施例中提供一种面向知识图谱的交互可视化方法,图1为本发明实施例提供的面向知识图谱的交互可视化方法整体流程示意图,该方法在autovis平台上实现,该方法包括:

s1,autovis平台接收通过web前端输入的查询条件;

s2,根据查询条件从知识图谱数据库中查询匹配的图数据,所述图数据包括基础节点信息和节点间的关系信息;

s3,根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

可以理解的是,随着知识工程的发展,知识图谱的应用面越来越广,将知识图谱与生产结合的尝试越来越多。利用知识图谱,人们可以更加有效的观察事物的发展规律,从而调整自身决策。为了使得知识图谱更直观的展示信息,对其进行可视化是非常有必要的。

基于上述需求,本发明实施例基于autovis平台实现面向知识图谱的交互可视化,首先autovis平台接收用户通过web前端输入的查询条件,根据查询条件从知识图谱数据库中查找与查询条件匹配的图数据。其中,知识图谱数据库中存储知识图谱数据,该知识图谱数据主要包括基础节点信息和节点间的关系信息。

比如,用户通过web前端向autovis平台输入“姚明”,则autovis平台从知识图谱数据库中查找与“姚明”相关的信息,例如,与“姚明”存在一定关系的人,查询出的每一个人称为节点,不同人之间的关系称为边信息。

然后autovis平台根据图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。可视化配置定义了将节点和边绘制成什么形式,将各个节点和边进行布局,生成最终的可视化布局图,并以网页的形成呈现。

本发明实施例通过autovis平台实现了知识图谱的可视化,使得知识图谱数据以更加直观、形象的方式展示。

作为一个可选的实施例,根据查询条件从知识图谱数据库中查询匹配的图数据之后还包括:

根据所述图数据中的基础节点信息和节点间的关系信息,通过预设布局算法生成每一个节点的位置信息和不同节点间的边信息;

相应的,根据图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

根据每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

可以理解的是,从知识图谱数据库中查询待匹配的图数据仅仅是简单的基础节点信息和各节点间的关系信息,比如,“姚明”与“叶莉”为夫妻关系,基础节点信息即“姚明”、“叶莉”,两者间的关系信息即为夫妻。需要将这些基础信息生成可视化的布局图,就需要确定每一个节点的位置信息以及表征节点间的关系的边信息,此时的边信息仅仅表征节点间是存在一定关系的。在本发明实施例中,根据基础节点信息和节点间的关系信息,采用预设布局算法(比如,fruchtermanreingold等布局算法)生成每一个节点的位置信息和对应的边信息。然后根据每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页。其中,每一个节点的位置信息为每一个节点在画布中的位置信息,根据每一个节点在画布中的位置信息和不同节点间的边信息,就可以在画布中绘制所有节点的可视化布局图。

可选的,可视化引擎集成有vega组件;

根据每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

将每一个节点的位置信息、不同节点间的边信息和可视化配置输入vega组件,由vega组件生成包含可视化布局图的网页。

可以理解的是,vega组件具有集成化,在生成了每一个节点的位置信息、不同节点间的边信息后,将每一个节点的位置信息、不同节点间的边信息以及可视化配置输入vega组件中,由vega组件生成对应的可视化布局图。

作为一个可选的实施例,可视化配置以可视化配置文件实现,可视化配置文件中包括每一个节点和视觉符号之间的映射关系以及每一对节点和有向边之间的映射关系。

可以理解的是,其中的可视化配置是通过编写可视化配置文件实现的,可视化配置文件中主要定义了每一个节点和视觉符号之间的对应关系以及每一对节点和有向边的映射关系。

其中,每一个节点和视觉符号之间的映射关系为节点的类型与视觉符号类型之间的对应关系,每一对节点和有向边之间的映射关系为每一对节点之间的关系类型与有向边类型之间的对应关系。

基于节点和符号之间的映射关系,将知识图谱中的每一个节点映射为对应的可视化符号;基于知识图谱中任一对节点之间的关系,将所述任一对节点之间的关系映射为对应的有向边。

比如,根据知识图谱中的每一个节点的类型,将每一个节点映射为对应颜色的圆形点;根据每一个节点的度,确定每一个节点对应的圆形点的初始大小;其中,当节点的类型未知,则将节点映射为与其它类型节点对应的圆形点的颜色不同的圆形点。

再比如,根据知识图谱中的每一个节点的类型,将每一个节点映射为对应的emoji字符;根据每一个节点的度,确定每一个节点对应的emoji字符的初始大小;其中,当节点的类型未知,则将节点映射为与其它类型节点对应的emoji字符不同的emoji字符。

其中,无论是将节点映射为圆形点还是图形点,映射后的圆形点或图形点均可缩放或不可缩放。

同样的,有向边表征第一节点到第二节点之间的关系,根据第一节点与第二节点之间的关系类型,将第一节点与第二节点之间的关系映射为对应颜色的有向边。比如,夫妻关系采用红色的有向边表示,父子关系采用绿色的有向边表示,所谓的有向边中的箭头方向表示从哪一个节点到哪一个节点的关系。

在可视化配置文件中定义了每一个节点与视觉符号之间的映射关系和每一对节点与边之间的映射关系,还需要定义交互方案,即鼠标的操作或快捷键的操作与对可视化布局图的操作之间的对应关系,可通过鼠标或快捷键对生成的可视化布局图进行相应的操作。

作为一个可选的实施例,根据每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

根据每一个节点的位置信息、每一个节点对应的视觉符号、每一对节点对应的有向边,生成可视化布局图,可视化布局图中展示所有节点间的拓扑结构。

可以理解的是,根据前述实施例生成的具有布局的每一个节点的位置信息和节点间的边信息,autovis平台通过加载可视化配置文件来生成可视化布局图,可视化布局图中展示了每一个节点的位置以及节点间的关系,生成的可视化布局图更直观、更形象。

需要说明的是,在编写可视化配置文件时,由于最终是由vega组件根据每一个节点的位置信息、不同节点间的边信息以及可视化配置文件生成的可视化布局图,因此,本发明实施例中编写的可视化配置文件,vega组件能够识别。

故在编写可视化配置文件的过程中,根据vega组件的一些标准进行编写,其中,具体为根据可视化映射方案进行编写,所说的可视化映射方案即是指每一个节点与视觉符号之间的映射关系以及每一对节点与边信息之间的映射关系,以及交互方案。

下面举例说明可视化配置文件中编写的交互方案,采用json字符串进行编写,其中,json字符串对应的json由如下部分组成:

(1)signals用于监听对应事件的发生与提供一些变量来作样式调整,signals中声明的信号包括:

layoutzoom,用于根据给定的画布大小放缩节点的初始大小。如:当画布宽度小于400时,节点的初始半径的缩放倍率为画布宽度除以400;画布宽度大于1000时,节点的初始半径的缩放倍率为画布宽度除以1000,其他情况节点的初始半径维持原输入。

xoffset,yoffset,用于计算横竖坐标轴在画布中的显示位置(实际上这个坐标轴被隐藏了,一般在调试中将其显示出来用于检验点的绘画位置是否正确)。

xrange,yrange,用于表示画布的长和宽,即可在画布中绘图的区域。

down,用于捕捉在画布空白处按下鼠标左键的事件,当在画布空白处按下鼠标左键,该信号的值为按下的位置在画布上的坐标。如果在某个图形上按下,该信号的值为空。

delta,用于检测在鼠标左键按下和松开时鼠标移动的事件,当down这个信号不为空值时值为当前鼠标所在位置(鼠标应仍处于按下状态)与鼠标按下位置的坐标差;当down为空时,该值为[0,0](表示没有移动鼠标),该信号主要用于实现画布的拖拽。

anchor,用于检测鼠标滚轮滑动时鼠标所处的位置,主要用于选定画布缩放时的缩放中心。

zoom,用于检测鼠标滚轮的滑动事件,信号值为根据鼠标滚轮的滑动幅度换算得到的缩放倍率。

xdom,ydom,用于表示目前画布中可映射出的坐标。初始值为[0,1]即最开始的画布可以展示在坐标系中0<=x<=1,0<=y<=1的点。这两个值会检测delta和zoom的变化并对应的改变他们的值。

sizezoom,用于表示在用户缩放画布后节点的缩放,这个信号会捕捉zoom的变化并相应的做出变化。

xcur,ycur,用于记录在鼠标左键按下时的xdom和ydom。

nodehover,用于检测鼠标悬浮在节点上的事件,当鼠标悬浮在节点上时,值为节点的id;当鼠标移出节点后,值为空。

nodefocus,用于检测鼠标左键单击节点的事件。当鼠标左键单击节点后,值为节点的id;当鼠标左键在空白处抬起,值为空。

noderearrange,与nodefocus类似,不过该信号用于检测左键双击节点事件。

blankclick,用于检测在画布空白处鼠标左键抬起的事件,值是一个布尔标志位,主要用于实现点击空白处选中所有图例。

shiftstatus,用于检测点击图例的事件,值是反映点击图例时是否按下shift键的布尔值。

legendclick,用于检测点击图例的事件,值是被点击的图例的名称。

(2)data,主要存储各类的数据集。有些数据集用于辅助实现图例,有些数据集就是要被可视化的数据。

selected,该数据集包含已经被选中的图例的名称,受blancklick、shiftstatus、legendclick影响。当blanckclick触发,将该数据集中所有元素;当shiftstatus为假,移除所有元素;当shiftstatus为假而legendclick不为空,将legendclick对应的图例名加入到selected中;而当shiftstatus为真而legendclick不为空,若legendclick对应的图例名不在selected中添加,在的话则移除。

node_o,用于保存所有需要可视化的节点。

nodes,引用node_o,但是节点大小经过layoutzoom放缩。

links,保存所有要可视化的边,经过处理将每个元素变换成包含起点对象、终点对象、起点坐标、终点坐标、边类型、起点id和终点id的对象。

legends,包含所有节点的图例。

actlegends,包含目前图中所含有的节点的图例。

llegends,包含所有边的图例。

actllegends,包含目前图中所含有的边的图例。

scales,主要声明了各类数据和可视化元素的映射关系。

xscale,yscale,表示了如何将坐标系中的x坐标和y坐标映射到画布上。

emojiscale,actemoji,将legends和actlegends对应到scale上。

linkclr,将actllegends对应到scale上。

marks,主要声明了需要绘制的图形。

node,用于绘制节点的背景圆形。数据源是nodes。

iconnode,用于绘制节点的emoji部分,类型是text,数据源是nodes,文本用actemoji映射,当出现不属于已知图例的节点时,绘制为问号。

link,用于绘制边,数据源是links。颜色用linkclr映射。

arrow,用于绘制边的箭头,数据源是links,颜色用linkclr映射。先在终点处画一个重心在终点处的等边三角形,然后根据起点和终点计算该三角形需要旋转的角度。

nodelabel,用于绘制节点对应的标签文字。数据源是nodes。

legendlabel,用于绘制节点图例,数据源是actlegends。

linklegendsymbol与linklegendlabel,用于绘制边的图例。数据源是actllegends。

axes声明坐标轴,x轴对应了xscale,y轴对应了yscale,调试时将其透明度设成1,平时将透明度设成0。

本发明实施例根据vega组件的特性编写可视化配置文件,利用vega的特性,降低了代码复杂度,实现者不需要编写复杂的javascript代码来对绘图和用户操作进行响应。

作为一个可选的实施例,所述根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页之后还包括:

将生成的包含可视化布局图的网页显示于web前端。

可以理解的是,当在autovis平台上生成了各节点的可视化布局图后,将各节点的可视化布局图后显示于web前端,供用户查看。

在本发明的另一个实施例中提供一种实现面向知识图谱的交互可视化的平台,该平台用于实现前述各实施例中的方法。因此,在前述面向知识图谱的交互可视化方法的各实施例中的描述和定义,可以用于本发明实施例中各个执行模块的理解。本发明实施例提供的平台为autovis平台,autovis平台上安装有可视化引擎;

autovis平台,用于根据查询条件从知识图谱数据库中查询匹配的图数据,图数据包括基础节点信息和节点间的关系信息;还用于根据图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

其中,基于autovis平台具体如何实现面向知识图谱的交互可视化可以参见前述格式实例提供的面向知识图谱的交互可视化方法的相关技术特征,在此不再赘述。

参见图2,提供了一种面向知识图谱的交互可视化系统,该可视化系统包括web前端、autovis平台和知识图谱数据库,所述autovis平台上安装有可视化引擎,所述可视化引擎集成有vega组件;

web前端,用于接收输入的查询条件;

autovis平台,用于根据查询条件从知识图谱数据库中查询匹配的图数据,图数据包括基础节点信息和节点间的关系信息;

vega组件,用于根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

作为一个可选的实施例,autovis平台还包括生成模块,用于将生成的包含可视化布局图的网页显示于web前端。

其中,基于autovis平台具体如何实现面向知识图谱的交互可视化可以参见前述格式实例提供的面向知识图谱的交互可视化方法的相关技术特征,在此不再赘述。

本发明实施例提供一种面向知识图谱的交互可视化方法、平台及系统,该方法通过autovis平台实现了知识图谱的可视化,使得知识图谱数据以更加直观、形象的方式展示;利用vega的特性,降低了代码复杂度,实现者不需要编写复杂的javascript代码来对绘图和用户操作进行响应。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。


技术特征:

1.一种面向知识图谱的交互可视化方法,其特征在于,所述方法在autovis平台上实现,所述方法包括:

autovis平台接收通过web前端输入的查询条件;

根据查询条件从知识图谱数据库中查询匹配的图数据,所述图数据包括基础节点信息和节点间的关系信息;

根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页,其中,所述可视化引擎安装于autovis平台上。

2.根据权利要求1所述的方法,其特征在于,所述根据查询条件从知识图谱数据库中查询匹配的图数据之后还包括:

根据所述图数据中的所述基础节点信息和节点间的关系信息,通过预设布局算法生成每一个节点的位置信息和不同节点间的边信息;

相应的,根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

根据所述每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

3.根据权利要求2所述的方法,其特征在于,所述可视化引擎集成有vega组件;

所述根据所述每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

将每一个节点的位置信息、不同节点间的边信息和可视化配置输入vega组件,由vega组件生成包含可视化布局图的网页。

4.根据权利要求2或3所述的方法,其特征在于,所述可视化配置以可视化配置文件实现,所述可视化配置文件中包括每一个节点和视觉符号之间的映射关系以及每一对节点和有向边之间的映射关系。

5.根据权利要求4所述的方法,其特征在于,所述每一个节点和视觉符号之间的映射关系为每一个节点的类型与视觉符号类型之间的对应关系,所述每一对节点和有向边之间的映射关系为每一对节点之间的关系类型与有向边类型之间的对应关系。

6.根据权利要求5所述的方法,其特征在于,所述根据所述每一个节点的位置信息、不同节点间的边信息和可视化配置,在可视化引擎上生成包含可视化布局图的网页包括:

根据每一个节点的位置信息、每一个节点对应的视觉符号、每一对节点对应的有向边,生成可视化布局图,所述可视化布局图中展示所有节点间的拓扑结构。

7.根据权利要求1所述的方法,其特征在于,所述根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页之后还包括:

将生成的包含可视化布局图的网页显示于web前端。

8.一种实现面向知识图谱的交互可视化的平台,其特征在于,所述平台为autovis平台,所述autovis平台上安装有可视化引擎;

所述autovis平台,用于根据查询条件从知识图谱数据库中查询匹配的图数据,所述图数据包括基础节点信息和节点间的关系信息;还用于根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

9.一种面向知识图谱的交互可视化系统,其特征在于,包括web前端、autovis平台和知识图谱数据库,所述autovis平台上安装有可视化引擎,所述可视化引擎集成有vega组件;

所述web前端,用于接收输入的查询条件;

所述autovis平台,用于根据查询条件从知识图谱数据库中查询匹配的图数据,所述图数据包括基础节点信息和节点间的关系信息;

所述vega组件,用于根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。

10.根据权利要求9所述的系统,其特征在于,所述autovis平台还包括生成模块;

所述显示模块,用于将生成的包含可视化布局图的网页显示于web前端。

技术总结
本发明实施例提供一种面向知识图谱的交互可视化方法、平台和系统,方法包括:AutoVis平台接收通过Web前端输入的查询条件;根据查询条件从知识图谱数据库中查询匹配的图数据,所述图数据包括基础节点信息和节点间的关系信息;根据所述图数据和可视化配置,在可视化引擎上生成包含可视化布局图的网页。本发明实施例通过AutoVis平台实现了知识图谱的可视化,使得知识图谱数据以更加直观、形象的方式展示;利用Vega的特性,降低了代码复杂度,实现者不需要编写复杂的JavaScript代码来对绘图和用户操作进行响应。

技术研发人员:王建民;沈恩亚;张力;韦宇华
受保护的技术使用者:清华大学
技术研发日:2020.01.14
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-23046.html

最新回复(0)