一种有向循环图的展示方法及其应用与流程

文档序号:12719810阅读:349来源:国知局
一种有向循环图的展示方法及其应用与流程
本申请总体涉及计算机信息处理领域,尤其是涉及一种综合展示用户行为轨迹或其统计结果的方法,有向循环图的展示方法,以及采用该方法的计算机和计算机可读介质。
背景技术
:一个应用系统的功能划分是否合理,不同类型用户的访问习惯是什么,哪些是热点访问路径,这些都可以通过用户的操作轨迹来反映。但目前还没有一种准确直观反映用户行为轨迹的方法。此外,具有大数据存储能力的今天,人们在现实生活中的行为轨迹也能够收集到,然而需要一种方法来将这些行为轨迹准确直观地展示出来,从而指导生产和规划。技术实现要素:本发明的一个方面涉及有向循环图的展示方法和一种综合展示用户行为轨迹的方法,该方法能够准确直观反映用户行为轨迹。本发明的第一方面包括以下内容:一种综合展示用户行为轨迹的方法,包括如下步骤:获取用户的行为轨迹统计结果,其中所述用户行为轨迹统计结果包括用户的起始访问路径和跳转访问路径,每个起始访问路径包括起始点、首次访问页面和该起始访问路径的访问次数,每个跳转访问路径包括起始页面、终止页面和以及该跳转访问路径的访问次数;将所述行为轨迹统计结果以包含多叉树的形式展示,其中所述多叉树的根结点表示该起始点,根结点与其子结点之间的路径表示起始访问路径,所述多叉树的除根结点以外的结点表示用户所访问到的页面,所述多叉树的除根结点以外的结点之间的路径表示跳转访问路径,即跳转访问路径表示用户从父结点页面跳转到子结点页面的操作,所述多叉树的跳转访问路径具有权重,所述跳转访问路径的权重对应于该跳转访问路径的访问次数。在本申请中,“获取用户的行为轨迹统计结果”的步骤可以是对用户行为的直接统计结果,也可以是对用户行为轨迹的统计结果。对用户行为的直接统计结果可以在不形成用户行为轨迹的情况下获得。在本申请中,用户的行为轨迹是用户在访问应用的过程中从初始页面开始依次所访问到的各个页面以及访问的顺序的集合。该集合在计算机领域可以用有向循环图来构筑。各种访问路径的获取、访问路径的权重,和子树的形成可以是基于对该有向循环图的统计获得的。在本申请中,当述及按照从大到小的顺序排列时,对于相同大小的权重采用不予区分的方法排列,也即权重相同的路径可以任意排列。本发明的另一方面包括如下内容:实施方式1.一种综合展示用户行为轨迹的方法,包括如下步骤:获取用户的行为轨迹,每个行为轨迹包括用户的起始访问页面以及依次访问的后续页面,也即每个行为轨迹可以以一个连通有向循环子图表示,其中该连通有向循环子图的起始顶点是起始访问页面,其他顶点表示用户所访问到的后续页面,所述有向循环图中带方向的路径就是用户访问页面的方向,也即用户从一个页面跳转到另一个页面的操作,所有的连通有向循环子图构成有向循环图;将所述行为轨迹以包含多叉树的形式展示,其中所述多叉树的根结点表示访问入口,其他结点表示用户所访问到的页面;根结点到其下一级子结点之间的路径表示起始访问路径,根结点的每个下一级子结点表示一个起始访问页面,该起始访问路径的权重就是在该有向循环图中该起始访问页面作为起始顶点出现的次数;除根结点之外其他结点之间的路径表示跳转访问路,对应于所述有向循环图中的路径,该跳转访问路径的权重就是它在该有向循环图中出现的次数。实施方式2.实施方式1的方法,其中在所展示的多叉树中,所述权重采用路径的特征来表示,所述路径的特征包括选自以下的至少一种:路径的颜色,路径的粗细,路径上的数字,及其组合。实施方式3.实施方式1或2的方法,其中对所述多叉树的每个子结点分别进行树的遍历,如果该子结点的父结点到该子结点的路径的权重及该子结点以下的所有路径的权重低于阈值,则删除该子结点及其下的所有子结点,然后展示所述多叉树的剩余部分。实施方式4.实施方式1至3中任一项所述的方法,其中“将所述行为轨迹以包含多叉树的形式展示”包括以下步骤:形成起始树,所述起始树的根结点为访问入口,所述根结点的子结点为所述有向循环图中每个连通有向循环子图的起始顶点,所有起始顶点根据遍历的顺序按照起始顶点所对应的起始路径的权重从大到小排列,将所述有向循环图中涉及的每个页面(顶点)所对应的结点形成一棵子树,该子树包括在以该页面(顶点)为终点的所有路径中权重最大的路径的起点作为父结点,和以该页面(顶点)为起点的所有路径中的终点为子结点,并且所有子结点根据遍历的顺序按所述子结点所对应的路径的权重从大到小排列,从根结点开始按照层次优先算法对起始树进行树的遍历,并且适用以下规则中的一个或多个:遍历到某个结点时,如果该结点对应的子树中该结点的父结点是当前所遍历的树中该结点的父结点,则将该结点对应的子树挂到当前所遍历的树中;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点不属于某个环,则将当前结点表示为访问终点,不再对该结点进行进一步的遍历;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点属于某个环,则将该结点对应的子树挂到当前所遍历的树中的当前结点,继续对该结点的子结点进行进一步的遍历,并且任选地将该子树中该结点的父结点变更为当前所遍历的树中该结点的父结点。实施方式5.实施方式4的方法,其中“判断该结点是否属于某个环”的步骤包括:在所有的子树构成的森林中,从该结点对应的子树出发,依次向上查找,任选地适用以下规则至少之一:如果在N次查找之内找到了该结点本身,则该结点就属于某个环,否则就不属于某个环;和如果在N次查找之内找到了起始点,则该结点不属于某个环。实施方式6.实施方式4的方法,还包括将表示为访问终点的结点以虚线显示。实施方式7.实施方式4的方法,其中所述遍历的顺序为从左到右或者从右到左。实施方式8.有向循环图的展示方法,其中所述有向循环图包括多个连通有向循环子图,所述方法包括:将所述有向循环图以多叉树的形式展示,其中多叉树的根结点表示访问入口,根结点的下一级子结点包括所述多个连通有向循环子图的起始顶点,所述根结点到其下一级子结点的路径称为起始路径,所述起始路径的权重是所述起始顶点在所述有向循环图中作为起始顶点出现的次数,所述多叉树中根结点之外的结点之间的跳转路径对应于所述有向循环图中相应结点之间的路径,该跳转路径的父结点为所述有向循环图中相应路径的起点,该跳转路径的子结点为所述有向循环图中相应路径的终点,所述跳转路径的权重对应于所述多叉树的路径对应地在所述有向循环图中出现次数。实施方式9.实施方式8的方法,其中所述权重采用路径的特征来表示,所述路径的特征包括选自以下的至少一种:路径的颜色,路径的粗细,路径上的数字,及其组合。实施方式10.实施方式8或9的方法,其中对所述多叉树的每个子结点分别进行树的遍历,如果该子结点的父结点到该子结点的路径的权重及该子结点以下的所有路径的权重低于阈值,则删除该子结点及其下的所有子结点,然后展示所述多叉树的剩余部分。实施方式11.实施方式8至10中任一项所述的方法,其中“将所述有向循环图以多叉树的形式展示”包括以下步骤:形成起始树,所述起始树包括根结点和下一级子结点,所述根结点的下一级子结点为所述有向循环图中多个连通有向循环子图的起始顶点,所有起始顶点根据遍历的顺序按照起始顶点所对应的起始路径的权重从大到小排列,将所述有向循环图涉及的每个顶点形成一棵子树,该子树包括在以该顶点为终点的所有路径中权重最大的路径的起点作为父结点,在统计权重时起始顶点的父结点视为根结点来计算起始路径的权重,和以该顶点为起点的所有路径中的终点为子结点,并且所有子结点根据遍历的顺序按所述子结点所对应的路径的权重从大到小排列,从根结点开始按照层次优先算法对起始树进行树的遍历,并且适用以下规则中的一个或多个:遍历到某个结点时,如果该结点对应的子树中该结点的父结点是当前所遍历的树中该结点的父结点,则将该结点对应的子树挂到当前所遍历的树中;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点不属于某个环,则将当前结点表示为访问终点,不再对该结点进行进一步的遍历;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点属于某个环,则将该结点对应的子树挂到当前所遍历的树中的当前结点,继续对该结点的子结点进行进一步的遍历,并且任选地将该子树中该结点的父结点变更为当前所遍历的树中该结点的父结点。实施方式12.实施方式11的方法,其中“判断该结点是否属于某个环”的步骤包括:在所有的子树构成的森林中,从该结点对应的子树出发,依次向上查找,任选地适用以下规则至少之一:如果在N次查找之内找到了该结点本身,则该结点就属于某个环,否则就不属于某个环;和如果在N次查找之内找到了起始点,则该结点不属于某个环。实施方式13.实施方式11的方法,还包括将表示为访问终点的结点以虚线显示。实施方式14.实施方式11的方法,其中所述遍历的顺序为从左到右或者从右到左。实施方式15.一种计算机可读介质,存储有计算机可执行指令,当所述计算机可执行指令被执行时,可操作来执行所述实施方式1到14中任一项所述的方法。实施方式16.一种计算装置,其包含处理器和存储器,所述存储器存储有计算机可执行指令,当所述处理器执行所述计算机可执行指令时,可操作来执行所述实施方式1到14中任一项所述的方法。以上所述的展示用户行为轨迹的方法能够以准确直观的方式反映用户行为轨迹的访问规律,直观反映出的各路径的热度,支持访问量过滤操作,可以实时监控网站的主要访问路径,访问量之下的路径则不显示出来,从而使用户专注分析主要访问页面,即使页面结点和访问量增加,本方法展示的树状图的复杂度不会增加,仍然保持清晰可用。以上所述的有向循环图的展示方法能够将各种反映人们习惯的复杂的有向循环图以准确直观的方式反映出来,使得便于分析和准确掌握人们的生活习惯,用于研究各类人群的模式,进行各种合理的规划。附图说明为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。图1是使用有向循环图表示的用户行为轨迹的示例。图2是形成起始树和子树的森林。图3是形成起始树的示例。图4是遍历B结点时对子树森林的更新。图5是对B结点遍历之后的多叉树状态。图6是对A结点遍历之后的多叉树状态。图7是对C结点遍历之后的多叉树状态。图8是对D结点遍历之后的多叉树状态。图9是对C下面的D结点遍历之后的状态。图10是对C的子结点A结点遍历之后的多叉树状态。图11是对C的子结点E结点遍历之后的多叉树状态。图12是对D的子结点C结点进行遍历之后的多叉树状态。图13是对A结点的子结点B结点进行遍历之后的多叉树状态。图14是对E结点的子节点A结点进行遍历之后的多叉树状态。图15是对多叉树的边(也即路径)添加权重之后的多叉树状态。图16是一个实际应用中的用户操作轨迹展示图。具体实施方式为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。在本申请中,除非特别指出或者根据上下文的理解可以得出不同的含义,否则各个术语具有本领域通常理解的含义。本申请中,应用系统是计算
技术领域
的术语,其包括但不限于网页应用,手机APP等等。本申请中,用户行为轨迹是指用户在应用系统中访问的一系列页面的集合,并且包含访问的顺序。在计算机中,用户行为轨迹可以使用有向循环图来表示。在本申请中,当述及“每个行为轨迹”时是指用户单次登陆该应用到退出该应用所访问的页面以及访问的顺序的结合,它可以使用从起始页面开始至退出页面的连通有向循环子图表示。在本申请中,“综合展示”的含义是指将多次用户行为轨迹通过图形的方式直观地显示出来。本申请中,有向循环图是计算
技术领域
的术语,其包括多个连通有向循环子图,每个有向循环子图包括从起始顶点开始至终止顶点的一系列顺序排列的顶点。在一些实施方式中,有向循环图的顶点表示用户在应用系统中访问到的页面,而有向循环图的顺序表示用户访问页面的顺序。在本申请中,术语将子树“挂到”正在遍历的树上是指将所述子树中与正在遍历的结点对应的结点的所有子结点按照子树中原本的顺序添加为正在遍历的结点的子结点。正在遍历的结点所对应的结点是指该结点与正在遍历的结点都表示相同的访问页面。在本申请中,有向循环图中顶点之间的边称为路径。在本申请中,为了便于与有向循环图相对应,将多叉树的边也称为多叉树的路径,当然也可以称之为多叉树的边。有向循环图中路径的方向在多叉树中反应为多叉树从父结点至子结点的路径(或边)。一个应用系统的功能划分是否合理,不同类型用户的访问习惯是什么,哪些是热点访问路径,这些都可以通过用户的操作轨迹来反映。本发明的展示方法能够准确直观反映用户行为轨迹的访问规律。在一些实施方式中,本申请提供一种综合展示用户行为轨迹的方法,包括如下步骤:获取用户的行为轨迹统计结果,其中所述用户行为轨迹统计结果包括用户的起始访问路径和跳转访问路径,每个起始访问路径包括起始点、首次访问页面和该起始访问路径的访问次数,每个跳转访问路径包括起始页面、终止页面和以及该跳转访问路径的访问次数;将所述行为轨迹统计结果以包含多叉树的形式展示,其中所述多叉树的根结点表示该起始点,根结点与其子结点之间的路径表示起始访问路径,所述多叉树的除根结点以外的结点表示用户所访问到的页面,所述多叉树的除根结点以外的结点之间的路径表示跳转访问路径,即跳转访问路径表示用户从父结点页面跳转到子结点页面的操作,所述多叉树的跳转访问路径具有权重,所述跳转访问路径的权重对应于该跳转访问路径的访问次数。以上所述的展示用户行为轨迹的方法能够以准确直观的方式反映用户的行为轨迹的访问规律(一般而言,根结点向子结点延伸的方向就是用户访问进一步进行的方向);直观反映出的各路径的热度(每条路径的权重直接反映用户进行该类访问的热度);支持访问量过滤操作,可以实时监控网站的主要访问路径,访问量之下的路径则不显示出来(通过将访问热度较低的访问路径删除,可以突出反映更加热门的访问路径);从而使用户专注分析主要访问页面,即使页面结点和访问量增加,本方法展示的树状图的复杂度不会增加,仍然保持清晰可用(由于应用中页面数量的变化一般不会太大,而本发明的方法所展示的多叉树的复杂度与应用中被访问到的页面的总数相关,与参与统计的样本的多少相关度不大,样本的剧烈增加几乎不会增加多叉树的复杂度)。在本发明方法的一些实施方式中,所述多叉树的起始访问路径具有权重,所述起始访问路径的权重对应于该起始访问路径的访问次数,或者所述起始访问路径的权重对应于该起始访问路径下的所有跳转访问路径中最大的权重。对于起始访问路径的权重,可以直接根据访问次数来决定。另一种方式是,将起始访问路径的权重定义为该路径下各个路径中最大的权重,这样可以从根结点就反映出该访问方式所能达到的最高访问热度。在本发明方法的一些实施方式中,将所有的用户使用相同的起始点。采用这种方式能够从整体上反应用户行为轨迹的特点。在本发明方法的另一些实施方式中,者用户被分成多种类型,而相同类型的用户使用相同的起始点。采用这种方式,能够得到一个多叉树的森林,其中每棵树反映的是一类用户的行为轨迹的特点。在本发明方法的一些实施方式中,所述权重采用路径的特征来表示,所述路径的特征包括选自以下的至少一种:路径的颜色,路径的粗细,路径上的数字,及其组合。在使用本发明的方法所展示的多叉树中,路径的权重可以采用多种方法来展示,比如采用颜色来展示,可以采用越深的颜色表示越高的权重;采用路径的粗细来表示的情况下,可以采用越粗的边表示越高的权重;采用数字表示权重的情况下,可以在路径的边上标注数字;也可以采用前述各种方法的组合,比如同时采用粗细和颜色来表示权重的变化,越高权重的路径采用越粗的和越深颜色的边。在本发明方法的一些实施方式中,对所述多叉树的每个子结点分别进行树的遍历,如果该子结点的父结点到该子结点的路径的权重及该子结点以下的所有路径的权重低于阈值,则删除该子结点及其下的所有子结点,然后展示所述多叉树的剩余部分。通过以上所述的实施方式使得本发明的方法支持访问量过滤操作,可以实时监控网站的主要访问路径,访问量之下的路径则不显示出来,从而使用户专注分析主要访问页面。在本申请中,将所述行为轨迹统计结果以包含多叉树的形式展示的具体方法在本发明中没有特别限制,本领域技术人员知晓可以采用多种方式实现。在本发明方法的一些具体的实施方式中,“将所述行为轨迹统计结果以包含多叉树的形式展示”包括以下步骤:将所有起始访问路径形成为起始树,其根结点为所述起始点,所述起始点的子结点根据遍历的顺序按照起始访问路径的权重从大到小排列,将用户的行为轨迹统计结果中涉及的每个页面所对应的结点形成一棵子树,该子树包括在以该页面为终点的所有起始访问路径和跳转访问路径中权重最大的路径的起点作为父结点,和以该页面为起点的所有跳转访问路径中的终点为子结点,并且所有子结点根据遍历的顺序按跳转访问路径的权重从大到小排列,将起始结点作为根结点按照层次优先算法对起始树进行树的遍历,并且适用以下规则中的一个或多个:遍历到某个结点时,如果该结点对应的子树中该结点的父结点是当前所遍历的树中该结点的父结点,则将该结点对应的子树挂到当前所遍历的树中;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点不属于某个环,则将当前结点表示为访问终点,不再对该结点进行进一步的遍历;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点属于某个环,则将该结点对应的子树挂到当前所遍历的树中的当前结点,继续对该结点的子结点进行进一步的遍历,并且任选地将该子树中该结点的父结点变更为当前所遍历的树中该结点的父结点。在以上的具体实施方式中,判断“判断该结点是否属于某个环”成为了重要的步骤,这是因为,虽然在实际的用户访问某应用系统的过程中,假设用户从登陆页面访问了初始页面A,而在使用该应用系统的过程中不断地反复从页面B返回到该初始页面A,那么进入初始页面A的这个访问路径(虽然他的权重比从页面B返回到该初始页面A的路径的权重低)实际上是重要的路径,因此在这种情况下初始页面A的父结点应该是登陆页面,因此在A属于某个环的情况下,应该将初始页面A的子树挂上,并任选地将初始页面A的子树的父节点更新为正在遍历的树中初始页面A的父结点。在本申请中,判断该结点是否属于某个环的具体方法在本发明中没有特别限制,本领域技术人员知晓可以采用多种方式实现。在本发明方法的一些具体的实施方式中,“判断该结点是否属于某个环”的步骤包括:在所有的子树构成的森林中,从该结点对应的子树出发,依次向上查找,任选地适用以下规则至少之一或者二者:如果在N次查找之内找到了该结点本身,则该结点就属于某个环,否则就不属于某个环;和如果在N次查找之内找到了起始点,则该结点不属于某个环。在一些实施方式中,所述方法还包括将表示为访问终点的结点以虚线显示。而非访问终点的结点以实线显示。虚线显示的访问终点表示该访问页面最常用的访问方式是从该展示树中的该访问页面的实结点出发的。在本申请中,进行树的遍历的方法是按照层次优先算法进行的。在树的每一层的遍历过程中,遍历的顺序没有限制,只要按照遍历顺序所遍历的路径的权重是按照从大到小的顺序遍历的即可。在一些实施方式中,所述遍历的顺序为从左到右或者从右到左。本发明的方法可以通过计算机程序来实现,或者说可以通过计算机指令来实现,因此本发明还提供一种计算机可读介质,存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行本申请的任一项实施方式中所述的方法。进而,本发明还提供一种计算机或者计算装置,其包含处理器和存储器,所述存储器存储有计算机可执行指令,当所述计算机执行所述计算机可执行指令时,执行本申请任一项实施方式中所述的方法。在一些另外的实施方式中,本申请还提供一种综合展示用户行为轨迹的方法,包括如下步骤:获取用户的行为轨迹,每个行为轨迹包括用户的起始访问页面以及依次访问的后续页面,也即每个行为轨迹可以以一个连通有向循环子图表示,其中该连通有向循环子图的起始顶点是起始访问页面,其他顶点表示用户所访问到的后续页面,所述有向循环图中带方向的路径就是用户访问页面的方向,也即用户从一个页面跳转到另一个页面的操作,所有的连通有向循环子图构成有向循环图;将所述行为轨迹以包含多叉树的形式展示,其中所述多叉树的根结点表示用户,其他结点表示用户所访问到的页面;根结点到其下一级子结点之间的路径表示起始访问路径,根结点的每个下一级子结点表示一个起始访问页面,该起始访问路径的权重就是在该有向循环图中该起始访问页面作为起始顶点出现的次数;除根结点之外其他结点之间的路径表示跳转访问路,对应于所述有向循环图中的路径,该跳转访问路径的权重就是它在该有向循环图中出现的次数。以上所述的展示用户行为轨迹的方法能够以准确直观的方式反映用户的行为轨迹的访问规律(一般而言,根结点向子结点延伸的方向就是用户访问进一步进行的方向);直观反映出的各路径的热度(每条路径的权重直接反映用户进行该类访问的热度);支持访问量过滤操作,可以实时监控网站的主要访问路径,访问量之下的路径则不显示出来(通过将访问热度较低的访问路径删除,可以突出反映更加热门的访问路径);从而使用户专注分析主要访问页面,即使页面结点和访问量增加,本方法展示的树状图的复杂度不会增加,仍然保持清晰可用(由于应用中页面数量的变化一般不会太大,而本发明的方法所展示的多叉树的复杂度与应用中被访问到的页面的总数相关,与参与统计的样本的多少相关度不大,样本的剧烈增加几乎不会增加多叉树的复杂度)。在以上所述的方法的一些实施方式中,其中在所展示的多叉树中,所述权重采用路径的特征来表示,所述路径的特征包括选自以下的至少一种:路径的颜色,路径的粗细,路径上的数字,及其组合。在使用本发明的方法所展示的多叉树中,路径的权重可以采用多种方法来展示,比如采用颜色来展示,可以采用越深的颜色表示越高的权重;采用路径的粗细来表示的情况下,可以采用越粗的边表示越高的权重;采用数字表示权重的情况下,可以在路径的边上标注数字;也可以采用前述各种方法的组合,比如同时采用粗细和颜色来表示权重的变化,越高权重的路径采用越粗的和越深颜色的边。在本发明方法的一些实施方式中,对所述多叉树的每个子结点分别进行树的遍历,如果该子结点的父结点到该子结点的路径的权重及该子结点以下的所有路径的权重低于阈值,则删除该子结点及其下的所有子结点,然后展示所述多叉树的剩余部分。通过以上所述的实施方式使得本发明的方法支持访问量过滤操作,可以实时监控网站的主要访问路径,访问量之下的路径则不显示出来,从而使用户专注分析主要访问页面。在本申请中,将所述行为轨迹以包含多叉树的形式展示的具体方法在本发明中没有特别限制,本领域技术人员知晓可以采用多种方式实现。在本发明方法的一些具体的实施方式中,“将所述行为轨迹以包含多叉树的形式展示”包括以下步骤:形成起始树,所述起始树的根结点为用户,所述根结点的子结点为所述有向循环图中每个连通有向循环子图的起始顶点,所有起始顶点根据遍历的顺序按照起始顶点所对应的起始路径的权重从大到小排列,将所述有向循环图中涉及的每个页面(顶点)所对应的结点形成一棵子树,该子树包括在以该页面(顶点)为终点的所有路径中权重最大的路径的起点作为父结点,和以该页面(顶点)为起点的所有路径中的终点为子结点,并且所有子结点根据遍历的顺序按所述子结点所对应的路径的权重从大到小排列,从根结点开始按照层次优先算法对起始树进行树的遍历,并且适用以下规则中的一个或多个:遍历到某个结点时,如果该结点对应的子树中该结点的父结点是当前所遍历的树中该结点的父结点,则将该结点对应的子树挂到当前所遍历的树中;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点不属于某个环,则将当前结点表示为访问终点,不再对该结点进行进一步的遍历;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点属于某个环,则将该结点对应的子树挂到当前所遍历的树中的当前结点,继续对该结点的子结点进行进一步的遍历,并且任选地将该子树中该结点的父结点变更为当前所遍历的树中该结点的父结点。在以上的具体实施方式中,判断“判断该结点是否属于某个环”成为了重要的步骤,这是因为,虽然在实际的用户访问某应用系统的过程中,假设用户从登陆页面访问了初始页面A,而在使用该应用系统的过程中不断地反复从页面B返回到该初始页面A,那么进入初始页面A的这个访问路径(虽然他的权重比从页面B返回到该初始页面A的路径的权重低)实际上是重要的路径,因此在这种情况下初始页面A的父结点应该是登陆页面。在本申请中,判断该结点是否属于某个环的具体方法在本发明中没有特别限制,本领域技术人员知晓可以采用多种方式实现。在本发明方法的一些具体的实施方式中,“判断该结点是否属于某个环”的步骤包括:在所有的子树构成的森林中,从该结点对应的子树出发,依次向上查找,任选地适用以下规则至少之一或者二者:如果在N次查找之内找到了该结点本身,则该结点就属于某个环,否则就不属于某个环;和如果在N次查找之内找到了起始点,则该结点不属于某个环。在一些实施方式中,所述方法还包括将表示为访问终点的结点以虚线显示。而非访问终点的结点以实线显示。虚线显示的访问终点表示该访问页面最常用的访问方式是从该展示树中的该访问页面的实结点出发的。在本申请中,进行树的遍历的方法是按照层次优先算法进行的。在树的每一层的遍历过程中,遍历的顺序没有限制,只要按照遍历顺序所遍历的路径的权重是按照从大到小的顺序遍历的即可。在一些实施方式中,所述遍历的顺序为从左到右或者从右到左。本发明的方法可以通过计算机程序来实现,或者说可以通过计算机指令来实现,因此本发明还提供一种计算机可读介质,存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行本申请的任一项实施方式中所述的方法。进而,本发明还提供一种计算机或计算装置,其包含处理器和存储器,所述存储器存储有计算机可执行指令,当所述计算机执行所述计算机可执行指令时,执行本申请任一项实施方式中所述的方法。以上所述的方法都涉及到能够以有向循环图体现的用户操作轨迹的树状展示方法。在更一般的情况下,实际上有向循环图可能描述各类与时间相关的事件,而本发明的构思也适用于展示任何有向循环图。例如,人们在现实生活中的行为轨迹也能够收集到,能够以有向循环图的方式存储,然而需要一种方法来将这些行为轨迹准确直观地展示出来,从而指导生产和规划。因此,更一般地,本申请还提供有向循环图的展示方法,其中所述有向循环图包括多个连通有向循环子图,所述方法包括:将所述有向循环图以多叉树的形式展示,其中多叉树的根结点的下一级子结点包括所述多个连通有向循环子图的起始顶点,所述根结点到其下一级子结点的路径称为起始路径,所述起始路径的权重是所述起始顶点在所述有向循环图中作为起始顶点出现的次数,所述多叉树中根结点之外的结点之间的跳转路径对应于所述有向循环图中相应结点之间的路径,该跳转路径的父结点为所述有向循环图中相应路径的起点,该跳转路径的子结点为所述有向循环图中相应路径的终点,所述跳转路径的权重对应于所述多叉树的路径对应地在所述有向循环图中出现次数。以上所述的有向循环图的展示方法也能够达到前面所述的优点,例如准确直观的方式反映有向循环图的内在关系,直观反映出的各路径的热度,支持热度过滤操作,即使数据量增加,所展示的多叉树的复杂度也几乎不会增加,在用于具体的应用时,能够为具体的应用提供设计指导。在以上所述的方法的一些实施方式中,所述权重采用路径的特征来表示,所述路径的特征包括选自以下的至少一种:路径的颜色,路径的粗细,路径上的数字,及其组合。在使用本发明的方法所展示的多叉树中,路径的权重可以采用多种方法来展示,比如采用颜色来展示,可以采用越深的颜色表示越高的权重;采用路径的粗细来表示的情况下,可以采用越粗的边表示越高的权重;采用数字表示权重的情况下,可以在路径的边上标注数字;也可以采用前述各种方法的组合,比如同时采用粗细和颜色来表示权重的变化,越高权重的路径采用越粗的和越深颜色的边。本发明的方法对于具体的展示树状图的图形方式(比如每个结点的形状,颜色,大小,路径所采用的线条形式等)并没有限制,只要能够将形成的多叉树以观察者容易接受的方式显示出来即可。在本发明方法的一些实施方式中,对所述多叉树的每个子结点分别进行树的遍历,如果该子结点的父结点到该子结点的路径的权重及该子结点以下的所有路径的权重低于阈值,则删除该子结点及其下的所有子结点,然后展示所述多叉树的剩余部分。通过以上所述的实施方式使得本发明的方法支持访问量过滤操作,可以实时监控主要访问路径,访问量之下的路径则不显示出来,从而使用户专注分析主要访问路径。在本申请中,将所述有向循环图以多叉树的形式展示的具体方法在本发明中没有特别限制,本领域技术人员知晓可以采用多种方式实现。在本发明方法的一些具体的实施方式中,“将所述有向循环图以多叉树的形式展示”包括以下步骤:形成起始树,所述起始树包括根结点和下一级子结点,所述根结点的下一级子结点为所述有向循环图中多个连通有向循环子图的起始顶点,所有起始顶点根据遍历的顺序按照起始顶点所对应的起始路径的权重从大到小排列,将所述有向循环图涉及的每个顶点形成一棵子树,该子树包括在以该顶点为终点的所有路径中权重最大的路径的起点作为父结点,在统计权重时起始顶点的父结点视为根结点来计算起始路径的权重,和以该顶点为起点的所有路径中的终点为子结点,并且所有子结点根据遍历的顺序按所述子结点所对应的路径的权重从大到小排列,从根结点开始按照层次优先算法对起始树进行树的遍历,并且适用以下规则中的一个或多个:遍历到某个结点时,如果该结点对应的子树中该结点的父结点是当前所遍历的树中该结点的父结点,则将该结点对应的子树挂到当前所遍历的树中;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点不属于某个环,则将当前结点表示为访问终点,不再对该结点进行进一步的遍历;遍历到某个结点时,如果该结点对应的子树中该结点的父结点不是当前所遍历的树中该结点的父结点,则判断该结点是否属于某个环,如果该结点属于某个环,则将该结点对应的子树挂到当前所遍历的树中的当前结点,继续对该结点的子结点进行进一步的遍历,并且任选地将该子树中该结点的父结点变更为当前所遍历的树中该结点的父结点。在以上的具体实施方式中,判断“判断该结点是否属于某个环”成为了重要的步骤,这样的设计来源于具体问题的分析,例如以上的一种综合展示用户行为轨迹的方法所涉及的问题。在本申请中,判断该结点是否属于某个环的具体方法在本发明中没有特别限制,本领域技术人员知晓可以采用多种方式实现。在本发明方法的一些具体的实施方式中,“判断该结点是否属于某个环”的步骤包括:在所有的子树构成的森林中,从该结点对应的子树出发,依次向上查找,任选地适用以下规则至少之一:如果在N次查找之内找到了该结点本身,则该结点就属于某个环,否则就不属于某个环;和如果在N次查找之内找到了起始点,则该结点不属于某个环。在一些实施方式中,所述方法还包括将表示为访问终点的结点以虚线显示。这样做是把该结点标记为虚结点。而非访问终点的结点以实线显示,为实结点。虚线显示的访问终点(或者说是以虚结点形式显示的结点)表示该访问最常用的访问方式是从该展示树中的该结点所对应的实结点出发的。在本申请的技术方案中,每个表示相同访问页面的结点只以实结点的形式出现一次,因此使得能够以最精简的树状图显示出用户行为轨迹的访问规律。在本申请中,进行树的遍历的方法是按照层次优先算法进行的。在树的每一层的遍历过程中,遍历的顺序没有限制,只要按照遍历顺序所遍历的路径的权重是按照从大到小的顺序遍历的即可。在一些实施方式中,所述遍历的顺序为从左到右或者从右到左。本发明的方法所展示的多叉树中的根结点由于是虚拟的,它与其下一级子结点之间的路径关系也是虚拟的,因此,在实际的展示示例中,可以将根结点和根结点与其下一级子结点之间的路径都构图成虚线。本发明的方法可以通过计算机程序来实现,或者说可以通过计算机指令来实现,因此本发明还提供一种计算机可读介质,存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行本申请的任一项实施方式中所述的方法。进而,本发明还提供一种计算机或计算装置,其包含处理器和存储器,所述存储器存储有计算机可执行指令,当所述计算机执行所述计算机可执行指令时,执行本申请任一项实施方式中所述的方法。实施例具体以用户小王为例,某网站共有五个页面,分别是页面A、页面B、页面C、页面D、页面E。小王在一段时间内总共访问三次该网站。每次访问的顺序依次为:第一次:B→C→A→B→D→C→E→A→B→C→D→C第二次:A→B→C→D→C第三次:B→C→D→C→A→B→C→D那么该如何刻画小王的操作轨迹呢?如果直接用一个网(即有向循环图)来表示的话,具体如图1中所示。该方案存在以下几个缺点:1.从图上无法反映用户的操作顺序,不知道用户是从哪个结点开始,到哪个结点结束的。2.不能直观看出访问热度信息,比如哪条路径访问的最多。3.当结点数量及访问次数增加时,该图将变为极其复杂,以致不可用。本实施例提出了如下的展示方法:根据用户访问页面的顺序,用一种多叉树的拓扑图来展现用户的操作轨迹,访树的根结点代表访问入口(或者用户),多叉树从上到下的每一层代表用户每次访问的第几页。结点连接线条的粗细代表着访问的频率,用户点击访问越多的路径,线条越粗,反之亦然。通过访问量过滤操作,可以实时监控网站的主要访问路径,访问量之下的路径则不显示出来,从而使用户专注分析主要访问页面。本方案优势:1.直观反映出用户访问的页面轨迹。2.直观反映出的各路径的热度。3.支持访问量过滤操作,可以实时监控网站的主要访问路径,访问量之下的路径则不显示出来,从而使用户专注分析主要访问页面。4.即使页面结点和访问量增加,本拓扑图的复杂不会增加,保持清晰可用。该方案具体实现如下:1.增加一个虚拟入口页面“S`”,以表示每次访问的开始结点。增加后上面的三次访问表示为:第一次:S`→B→C→A→B→D→C→E→A→B→C→D→C第二次:S`→A→B→C→D→C第三次:S`→B→C→D→C→A→B→C→D2.统计出所有结点路径及各结点路径的次数,上述三次访问的统计结果如下表所示:表1节点路径次数S′→A1S′→B2A→B4B→C5B→D1C→A2C→D4C→E1D→C4E→A13.以上述结果为基础构建拓扑图。首先,对于每个结点应用以下两条规则:a)选取一个权重最重的结点作为自己的父结点。如结点A,能够到达A的路径有S'→A(1),C→A(2),E→A(1),则选取C作为自己的父结点。b)将其所有子结点按权重从左到右依次排序。则可以生成图2中所示的森林。4.按照以下规则生成多叉树的拓扑图a)S`为拓扑图的根结点。b)从左至右依次遍历。c)遍历过的边或结点以斜线填充表示,没有遍历过的用未填充表示。d)虚线结点表示不再遍历子结点(访问终点)。e)遍历到某个结点时,如果森林里该结点的父结点正好是当前拓扑图中的父结点时,则当前结点标为斜线填充,同时从该森林里找出属于该结点的树,挂到当前拓扑图中。f)遍历到某个结点时,如果森林里该结点的父结点不是当前拓扑图中的父结点,且通过h中的规则判断,该结点不属于某一个环,则将当前结点标为虚边,并且斜线填充。g)遍历到某个结点时,如果森林里该结点的父结点不是当前拓扑图中的父结点,且通过h中的规则判断,该结点属于某一个环,则更新森林里属于该结点的那棵树,将当前拓扑图中的父结点作为树中该结点的父结点,同时该棵树挂到当前拓扑图中。拓扑图中该结标为斜线填充。h)判断一个结点是否属于某个环:如果从森林里中该结点那个树出发,依次向上查找,如果在N次查找之内找到了自己(N为所有结点个数,如当前示例中的N为6),则该结点就属于某个环,否则就不属于某个环。i)拓扑图中不存在没有未被遍历过的结点,即不存在未填充结点时,则整个拓扑图完成。具体生成过程如下:1)引入根结点S`,形成起始树,如图3所示。2)图中未填充结点为B、A。按从左到右的顺序先遍历B。森林里B的父结点是A,拓扑图中B的父结点是S`,A与S`不是同一结点,此时再从森林里依次查找B的父,结果为:BACB,即B属于环中结点,所以需要更新森林,将森林中B的父结点改为拓扑图中的父结点。更新后的森林如图4所示。更新后的多叉树如图5所示。3)再遍历A,A结点符合规则f。更新后的多叉树如图6所示。4)再遍历C,C结点符合规则e。更新后的多叉树如图7所示。5)再遍历第三层中的D,D结点符合规则f。更新后的多叉树如图8所示。6)再遍历第4层中的D,D结点符合规则e。更新后的多叉树如图9所示。7)再遍历第4层中的A,A结点符合规则e。更新后的多叉树如图10所示。8)再遍历第4层中的E,E结点符合规则e。更新后的多叉树如图11所示。9)再遍历第5层中的C,C结点符合规则f。更新后的多叉树如图12所示。10)再遍历第5层中的B,B结点符合规则f。更新后的多叉树如图13所示。11)再遍历第5层中的A,A结点符合规则f。更新后的多叉树如图14所示。12)拓扑图中不存在未填充结点,则结构生成完成。最后将每条边按实际权重进行标注(此处使用边的粗细来表示)。更新后的多叉树如图15所示。从图15中可以年看出用户最多的操作轨迹是:S`→B→C→D→C。该方案中,可以通过访问量过滤操作,实时监控网站的主要访问路径,低于该访问量路径则不显示出来,从而使用户专注分析主要访问页面。单击某个结点时将图中相同的结点以同一特殊颜色标出来,该结点的所有入口及出口信息以表格形式展现出来,辅助查看。在一个实际的应用中,对收集到的用户操作轨迹进行了总结和展示。最终的展现结果如图16所示。从图16中可以看出:访问入口为根结点,根结点的子结点为首页面和项目选择页面,项目选择页面的子结点是首页面,首页面下存在多条路径,其中从首页面到Bug列表页面是最通常使用的页面,用户进行更加深度的访问是通过控制台页面进行的。在图16中,无论收集到的用户操作轨迹的复杂度如何增加,该多叉树的展示情况基本上不会太改变,改变得比较多的应该是多叉树的路径(边)的相对权重。此外,本发明的方法所展示的多叉树中的根结点由于是虚拟的,它与其下一级子结点之间的路径关系也是虚拟的,因此,在实际的展示示例中,可以将根结点和根结点与其下一级子结点之间的路径都构图成虚线。以上所述仅是本公开的示范性实施方式,而非用于限制本公开的保护范围,本公开的保护范围由所附的权利要求确定。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1