本申請(qǐng)總體涉及計(jì)算機(jī)信息處理領(lǐng)域,尤其是涉及一種綜合展示用戶行為軌跡或其統(tǒng)計(jì)結(jié)果的方法,有向循環(huán)圖的展示方法,以及采用該方法的計(jì)算機(jī)和計(jì)算機(jī)可讀介質(zhì)。
背景技術(shù):
:一個(gè)應(yīng)用系統(tǒng)的功能劃分是否合理,不同類型用戶的訪問(wèn)習(xí)慣是什么,哪些是熱點(diǎn)訪問(wèn)路徑,這些都可以通過(guò)用戶的操作軌跡來(lái)反映。但目前還沒(méi)有一種準(zhǔn)確直觀反映用戶行為軌跡的方法。此外,具有大數(shù)據(jù)存儲(chǔ)能力的今天,人們?cè)诂F(xiàn)實(shí)生活中的行為軌跡也能夠收集到,然而需要一種方法來(lái)將這些行為軌跡準(zhǔn)確直觀地展示出來(lái),從而指導(dǎo)生產(chǎn)和規(guī)劃。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的一個(gè)方面涉及有向循環(huán)圖的展示方法和一種綜合展示用戶行為軌跡的方法,該方法能夠準(zhǔn)確直觀反映用戶行為軌跡。本發(fā)明的第一方面包括以下內(nèi)容:一種綜合展示用戶行為軌跡的方法,包括如下步驟:獲取用戶的行為軌跡統(tǒng)計(jì)結(jié)果,其中所述用戶行為軌跡統(tǒng)計(jì)結(jié)果包括用戶的起始訪問(wèn)路徑和跳轉(zhuǎn)訪問(wèn)路徑,每個(gè)起始訪問(wèn)路徑包括起始點(diǎn)、首次訪問(wèn)頁(yè)面和該起始訪問(wèn)路徑的訪問(wèn)次數(shù),每個(gè)跳轉(zhuǎn)訪問(wèn)路徑包括起始頁(yè)面、終止頁(yè)面和以及該跳轉(zhuǎn)訪問(wèn)路徑的訪問(wèn)次數(shù);將所述行為軌跡統(tǒng)計(jì)結(jié)果以包含多叉樹的形式展示,其中所述多叉樹的根結(jié)點(diǎn)表示該起始點(diǎn),根結(jié)點(diǎn)與其子結(jié)點(diǎn)之間的路徑表示起始訪問(wèn)路徑,所述多叉樹的除根結(jié)點(diǎn)以外的結(jié)點(diǎn)表示用戶所訪問(wèn)到的頁(yè)面,所述多叉樹的除根結(jié)點(diǎn)以外的結(jié)點(diǎn)之間的路徑表示跳轉(zhuǎn)訪問(wèn)路徑,即跳轉(zhuǎn)訪問(wèn)路徑表示用戶從父結(jié)點(diǎn)頁(yè)面跳轉(zhuǎn)到子結(jié)點(diǎn)頁(yè)面的操作,所述多叉樹的跳轉(zhuǎn)訪問(wèn)路徑具有權(quán)重,所述跳轉(zhuǎn)訪問(wèn)路徑的權(quán)重對(duì)應(yīng)于該跳轉(zhuǎn)訪問(wèn)路徑的訪問(wèn)次數(shù)。在本申請(qǐng)中,“獲取用戶的行為軌跡統(tǒng)計(jì)結(jié)果”的步驟可以是對(duì)用戶行為的直接統(tǒng)計(jì)結(jié)果,也可以是對(duì)用戶行為軌跡的統(tǒng)計(jì)結(jié)果。對(duì)用戶行為的直接統(tǒng)計(jì)結(jié)果可以在不形成用戶行為軌跡的情況下獲得。在本申請(qǐng)中,用戶的行為軌跡是用戶在訪問(wèn)應(yīng)用的過(guò)程中從初始頁(yè)面開始依次所訪問(wèn)到的各個(gè)頁(yè)面以及訪問(wèn)的順序的集合。該集合在計(jì)算機(jī)領(lǐng)域可以用有向循環(huán)圖來(lái)構(gòu)筑。各種訪問(wèn)路徑的獲取、訪問(wèn)路徑的權(quán)重,和子樹的形成可以是基于對(duì)該有向循環(huán)圖的統(tǒng)計(jì)獲得的。在本申請(qǐng)中,當(dāng)述及按照從大到小的順序排列時(shí),對(duì)于相同大小的權(quán)重采用不予區(qū)分的方法排列,也即權(quán)重相同的路徑可以任意排列。本發(fā)明的另一方面包括如下內(nèi)容:實(shí)施方式1.一種綜合展示用戶行為軌跡的方法,包括如下步驟:獲取用戶的行為軌跡,每個(gè)行為軌跡包括用戶的起始訪問(wèn)頁(yè)面以及依次訪問(wèn)的后續(xù)頁(yè)面,也即每個(gè)行為軌跡可以以一個(gè)連通有向循環(huán)子圖表示,其中該連通有向循環(huán)子圖的起始頂點(diǎn)是起始訪問(wèn)頁(yè)面,其他頂點(diǎn)表示用戶所訪問(wèn)到的后續(xù)頁(yè)面,所述有向循環(huán)圖中帶方向的路徑就是用戶訪問(wèn)頁(yè)面的方向,也即用戶從一個(gè)頁(yè)面跳轉(zhuǎn)到另一個(gè)頁(yè)面的操作,所有的連通有向循環(huán)子圖構(gòu)成有向循環(huán)圖;將所述行為軌跡以包含多叉樹的形式展示,其中所述多叉樹的根結(jié)點(diǎn)表示訪問(wèn)入口,其他結(jié)點(diǎn)表示用戶所訪問(wèn)到的頁(yè)面;根結(jié)點(diǎn)到其下一級(jí)子結(jié)點(diǎn)之間的路徑表示起始訪問(wèn)路徑,根結(jié)點(diǎn)的每個(gè)下一級(jí)子結(jié)點(diǎn)表示一個(gè)起始訪問(wèn)頁(yè)面,該起始訪問(wèn)路徑的權(quán)重就是在該有向循環(huán)圖中該起始訪問(wèn)頁(yè)面作為起始頂點(diǎn)出現(xiàn)的次數(shù);除根結(jié)點(diǎn)之外其他結(jié)點(diǎn)之間的路徑表示跳轉(zhuǎn)訪問(wèn)路,對(duì)應(yīng)于所述有向循環(huán)圖中的路徑,該跳轉(zhuǎn)訪問(wèn)路徑的權(quán)重就是它在該有向循環(huán)圖中出現(xiàn)的次數(shù)。實(shí)施方式2.實(shí)施方式1的方法,其中在所展示的多叉樹中,所述權(quán)重采用路徑的特征來(lái)表示,所述路徑的特征包括選自以下的至少一種:路徑的顏色,路徑的粗細(xì),路徑上的數(shù)字,及其組合。實(shí)施方式3.實(shí)施方式1或2的方法,其中對(duì)所述多叉樹的每個(gè)子結(jié)點(diǎn)分別進(jìn)行樹的遍歷,如果該子結(jié)點(diǎn)的父結(jié)點(diǎn)到該子結(jié)點(diǎn)的路徑的權(quán)重及該子結(jié)點(diǎn)以下的所有路徑的權(quán)重低于閾值,則刪除該子結(jié)點(diǎn)及其下的所有子結(jié)點(diǎn),然后展示所述多叉樹的剩余部分。實(shí)施方式4.實(shí)施方式1至3中任一項(xiàng)所述的方法,其中“將所述行為軌跡以包含多叉樹的形式展示”包括以下步驟:形成起始樹,所述起始樹的根結(jié)點(diǎn)為訪問(wèn)入口,所述根結(jié)點(diǎn)的子結(jié)點(diǎn)為所述有向循環(huán)圖中每個(gè)連通有向循環(huán)子圖的起始頂點(diǎn),所有起始頂點(diǎn)根據(jù)遍歷的順序按照起始頂點(diǎn)所對(duì)應(yīng)的起始路徑的權(quán)重從大到小排列,將所述有向循環(huán)圖中涉及的每個(gè)頁(yè)面(頂點(diǎn))所對(duì)應(yīng)的結(jié)點(diǎn)形成一棵子樹,該子樹包括在以該頁(yè)面(頂點(diǎn))為終點(diǎn)的所有路徑中權(quán)重最大的路徑的起點(diǎn)作為父結(jié)點(diǎn),和以該頁(yè)面(頂點(diǎn))為起點(diǎn)的所有路徑中的終點(diǎn)為子結(jié)點(diǎn),并且所有子結(jié)點(diǎn)根據(jù)遍歷的順序按所述子結(jié)點(diǎn)所對(duì)應(yīng)的路徑的權(quán)重從大到小排列,從根結(jié)點(diǎn)開始按照層次優(yōu)先算法對(duì)起始樹進(jìn)行樹的遍歷,并且適用以下規(guī)則中的一個(gè)或多個(gè):遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)不屬于某個(gè)環(huán),則將當(dāng)前結(jié)點(diǎn)表示為訪問(wèn)終點(diǎn),不再對(duì)該結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)屬于某個(gè)環(huán),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中的當(dāng)前結(jié)點(diǎn),繼續(xù)對(duì)該結(jié)點(diǎn)的子結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷,并且任選地將該子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)變更為當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)。實(shí)施方式5.實(shí)施方式4的方法,其中“判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)”的步驟包括:在所有的子樹構(gòu)成的森林中,從該結(jié)點(diǎn)對(duì)應(yīng)的子樹出發(fā),依次向上查找,任選地適用以下規(guī)則至少之一:如果在N次查找之內(nèi)找到了該結(jié)點(diǎn)本身,則該結(jié)點(diǎn)就屬于某個(gè)環(huán),否則就不屬于某個(gè)環(huán);和如果在N次查找之內(nèi)找到了起始點(diǎn),則該結(jié)點(diǎn)不屬于某個(gè)環(huán)。實(shí)施方式6.實(shí)施方式4的方法,還包括將表示為訪問(wèn)終點(diǎn)的結(jié)點(diǎn)以虛線顯示。實(shí)施方式7.實(shí)施方式4的方法,其中所述遍歷的順序?yàn)閺淖蟮接一蛘邚挠业阶?。?shí)施方式8.有向循環(huán)圖的展示方法,其中所述有向循環(huán)圖包括多個(gè)連通有向循環(huán)子圖,所述方法包括:將所述有向循環(huán)圖以多叉樹的形式展示,其中多叉樹的根結(jié)點(diǎn)表示訪問(wèn)入口,根結(jié)點(diǎn)的下一級(jí)子結(jié)點(diǎn)包括所述多個(gè)連通有向循環(huán)子圖的起始頂點(diǎn),所述根結(jié)點(diǎn)到其下一級(jí)子結(jié)點(diǎn)的路徑稱為起始路徑,所述起始路徑的權(quán)重是所述起始頂點(diǎn)在所述有向循環(huán)圖中作為起始頂點(diǎn)出現(xiàn)的次數(shù),所述多叉樹中根結(jié)點(diǎn)之外的結(jié)點(diǎn)之間的跳轉(zhuǎn)路徑對(duì)應(yīng)于所述有向循環(huán)圖中相應(yīng)結(jié)點(diǎn)之間的路徑,該跳轉(zhuǎn)路徑的父結(jié)點(diǎn)為所述有向循環(huán)圖中相應(yīng)路徑的起點(diǎn),該跳轉(zhuǎn)路徑的子結(jié)點(diǎn)為所述有向循環(huán)圖中相應(yīng)路徑的終點(diǎn),所述跳轉(zhuǎn)路徑的權(quán)重對(duì)應(yīng)于所述多叉樹的路徑對(duì)應(yīng)地在所述有向循環(huán)圖中出現(xiàn)次數(shù)。實(shí)施方式9.實(shí)施方式8的方法,其中所述權(quán)重采用路徑的特征來(lái)表示,所述路徑的特征包括選自以下的至少一種:路徑的顏色,路徑的粗細(xì),路徑上的數(shù)字,及其組合。實(shí)施方式10.實(shí)施方式8或9的方法,其中對(duì)所述多叉樹的每個(gè)子結(jié)點(diǎn)分別進(jìn)行樹的遍歷,如果該子結(jié)點(diǎn)的父結(jié)點(diǎn)到該子結(jié)點(diǎn)的路徑的權(quán)重及該子結(jié)點(diǎn)以下的所有路徑的權(quán)重低于閾值,則刪除該子結(jié)點(diǎn)及其下的所有子結(jié)點(diǎn),然后展示所述多叉樹的剩余部分。實(shí)施方式11.實(shí)施方式8至10中任一項(xiàng)所述的方法,其中“將所述有向循環(huán)圖以多叉樹的形式展示”包括以下步驟:形成起始樹,所述起始樹包括根結(jié)點(diǎn)和下一級(jí)子結(jié)點(diǎn),所述根結(jié)點(diǎn)的下一級(jí)子結(jié)點(diǎn)為所述有向循環(huán)圖中多個(gè)連通有向循環(huán)子圖的起始頂點(diǎn),所有起始頂點(diǎn)根據(jù)遍歷的順序按照起始頂點(diǎn)所對(duì)應(yīng)的起始路徑的權(quán)重從大到小排列,將所述有向循環(huán)圖涉及的每個(gè)頂點(diǎn)形成一棵子樹,該子樹包括在以該頂點(diǎn)為終點(diǎn)的所有路徑中權(quán)重最大的路徑的起點(diǎn)作為父結(jié)點(diǎn),在統(tǒng)計(jì)權(quán)重時(shí)起始頂點(diǎn)的父結(jié)點(diǎn)視為根結(jié)點(diǎn)來(lái)計(jì)算起始路徑的權(quán)重,和以該頂點(diǎn)為起點(diǎn)的所有路徑中的終點(diǎn)為子結(jié)點(diǎn),并且所有子結(jié)點(diǎn)根據(jù)遍歷的順序按所述子結(jié)點(diǎn)所對(duì)應(yīng)的路徑的權(quán)重從大到小排列,從根結(jié)點(diǎn)開始按照層次優(yōu)先算法對(duì)起始樹進(jìn)行樹的遍歷,并且適用以下規(guī)則中的一個(gè)或多個(gè):遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)不屬于某個(gè)環(huán),則將當(dāng)前結(jié)點(diǎn)表示為訪問(wèn)終點(diǎn),不再對(duì)該結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)屬于某個(gè)環(huán),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中的當(dāng)前結(jié)點(diǎn),繼續(xù)對(duì)該結(jié)點(diǎn)的子結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷,并且任選地將該子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)變更為當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)。實(shí)施方式12.實(shí)施方式11的方法,其中“判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)”的步驟包括:在所有的子樹構(gòu)成的森林中,從該結(jié)點(diǎn)對(duì)應(yīng)的子樹出發(fā),依次向上查找,任選地適用以下規(guī)則至少之一:如果在N次查找之內(nèi)找到了該結(jié)點(diǎn)本身,則該結(jié)點(diǎn)就屬于某個(gè)環(huán),否則就不屬于某個(gè)環(huán);和如果在N次查找之內(nèi)找到了起始點(diǎn),則該結(jié)點(diǎn)不屬于某個(gè)環(huán)。實(shí)施方式13.實(shí)施方式11的方法,還包括將表示為訪問(wèn)終點(diǎn)的結(jié)點(diǎn)以虛線顯示。實(shí)施方式14.實(shí)施方式11的方法,其中所述遍歷的順序?yàn)閺淖蟮接一蛘邚挠业阶?。?shí)施方式15.一種計(jì)算機(jī)可讀介質(zhì),存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,當(dāng)所述計(jì)算機(jī)可執(zhí)行指令被執(zhí)行時(shí),可操作來(lái)執(zhí)行所述實(shí)施方式1到14中任一項(xiàng)所述的方法。實(shí)施方式16.一種計(jì)算裝置,其包含處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,當(dāng)所述處理器執(zhí)行所述計(jì)算機(jī)可執(zhí)行指令時(shí),可操作來(lái)執(zhí)行所述實(shí)施方式1到14中任一項(xiàng)所述的方法。以上所述的展示用戶行為軌跡的方法能夠以準(zhǔn)確直觀的方式反映用戶行為軌跡的訪問(wèn)規(guī)律,直觀反映出的各路徑的熱度,支持訪問(wèn)量過(guò)濾操作,可以實(shí)時(shí)監(jiān)控網(wǎng)站的主要訪問(wèn)路徑,訪問(wèn)量之下的路徑則不顯示出來(lái),從而使用戶專注分析主要訪問(wèn)頁(yè)面,即使頁(yè)面結(jié)點(diǎn)和訪問(wèn)量增加,本方法展示的樹狀圖的復(fù)雜度不會(huì)增加,仍然保持清晰可用。以上所述的有向循環(huán)圖的展示方法能夠?qū)⒏鞣N反映人們習(xí)慣的復(fù)雜的有向循環(huán)圖以準(zhǔn)確直觀的方式反映出來(lái),使得便于分析和準(zhǔn)確掌握人們的生活習(xí)慣,用于研究各類人群的模式,進(jìn)行各種合理的規(guī)劃。附圖說(shuō)明為了更清楚地說(shuō)明本公開實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅涉及本公開的一些實(shí)施例,而非對(duì)本公開的限制。圖1是使用有向循環(huán)圖表示的用戶行為軌跡的示例。圖2是形成起始樹和子樹的森林。圖3是形成起始樹的示例。圖4是遍歷B結(jié)點(diǎn)時(shí)對(duì)子樹森林的更新。圖5是對(duì)B結(jié)點(diǎn)遍歷之后的多叉樹狀態(tài)。圖6是對(duì)A結(jié)點(diǎn)遍歷之后的多叉樹狀態(tài)。圖7是對(duì)C結(jié)點(diǎn)遍歷之后的多叉樹狀態(tài)。圖8是對(duì)D結(jié)點(diǎn)遍歷之后的多叉樹狀態(tài)。圖9是對(duì)C下面的D結(jié)點(diǎn)遍歷之后的狀態(tài)。圖10是對(duì)C的子結(jié)點(diǎn)A結(jié)點(diǎn)遍歷之后的多叉樹狀態(tài)。圖11是對(duì)C的子結(jié)點(diǎn)E結(jié)點(diǎn)遍歷之后的多叉樹狀態(tài)。圖12是對(duì)D的子結(jié)點(diǎn)C結(jié)點(diǎn)進(jìn)行遍歷之后的多叉樹狀態(tài)。圖13是對(duì)A結(jié)點(diǎn)的子結(jié)點(diǎn)B結(jié)點(diǎn)進(jìn)行遍歷之后的多叉樹狀態(tài)。圖14是對(duì)E結(jié)點(diǎn)的子節(jié)點(diǎn)A結(jié)點(diǎn)進(jìn)行遍歷之后的多叉樹狀態(tài)。圖15是對(duì)多叉樹的邊(也即路徑)添加權(quán)重之后的多叉樹狀態(tài)。圖16是一個(gè)實(shí)際應(yīng)用中的用戶操作軌跡展示圖。具體實(shí)施方式為使本公開實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本公開實(shí)施例的附圖,對(duì)本公開實(shí)施例的技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例是本公開的一部分實(shí)施例,而不是全部的實(shí)施例。基于所描述的本公開的實(shí)施例,本領(lǐng)域普通技術(shù)人員在無(wú)需創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本公開保護(hù)的范圍。在本申請(qǐng)中,除非特別指出或者根據(jù)上下文的理解可以得出不同的含義,否則各個(gè)術(shù)語(yǔ)具有本領(lǐng)域通常理解的含義。本申請(qǐng)中,應(yīng)用系統(tǒng)是計(jì)算
技術(shù)領(lǐng)域:
的術(shù)語(yǔ),其包括但不限于網(wǎng)頁(yè)應(yīng)用,手機(jī)APP等等。本申請(qǐng)中,用戶行為軌跡是指用戶在應(yīng)用系統(tǒng)中訪問(wèn)的一系列頁(yè)面的集合,并且包含訪問(wèn)的順序。在計(jì)算機(jī)中,用戶行為軌跡可以使用有向循環(huán)圖來(lái)表示。在本申請(qǐng)中,當(dāng)述及“每個(gè)行為軌跡”時(shí)是指用戶單次登陸該應(yīng)用到退出該應(yīng)用所訪問(wèn)的頁(yè)面以及訪問(wèn)的順序的結(jié)合,它可以使用從起始頁(yè)面開始至退出頁(yè)面的連通有向循環(huán)子圖表示。在本申請(qǐng)中,“綜合展示”的含義是指將多次用戶行為軌跡通過(guò)圖形的方式直觀地顯示出來(lái)。本申請(qǐng)中,有向循環(huán)圖是計(jì)算
技術(shù)領(lǐng)域:
的術(shù)語(yǔ),其包括多個(gè)連通有向循環(huán)子圖,每個(gè)有向循環(huán)子圖包括從起始頂點(diǎn)開始至終止頂點(diǎn)的一系列順序排列的頂點(diǎn)。在一些實(shí)施方式中,有向循環(huán)圖的頂點(diǎn)表示用戶在應(yīng)用系統(tǒng)中訪問(wèn)到的頁(yè)面,而有向循環(huán)圖的順序表示用戶訪問(wèn)頁(yè)面的順序。在本申請(qǐng)中,術(shù)語(yǔ)將子樹“掛到”正在遍歷的樹上是指將所述子樹中與正在遍歷的結(jié)點(diǎn)對(duì)應(yīng)的結(jié)點(diǎn)的所有子結(jié)點(diǎn)按照子樹中原本的順序添加為正在遍歷的結(jié)點(diǎn)的子結(jié)點(diǎn)。正在遍歷的結(jié)點(diǎn)所對(duì)應(yīng)的結(jié)點(diǎn)是指該結(jié)點(diǎn)與正在遍歷的結(jié)點(diǎn)都表示相同的訪問(wèn)頁(yè)面。在本申請(qǐng)中,有向循環(huán)圖中頂點(diǎn)之間的邊稱為路徑。在本申請(qǐng)中,為了便于與有向循環(huán)圖相對(duì)應(yīng),將多叉樹的邊也稱為多叉樹的路徑,當(dāng)然也可以稱之為多叉樹的邊。有向循環(huán)圖中路徑的方向在多叉樹中反應(yīng)為多叉樹從父結(jié)點(diǎn)至子結(jié)點(diǎn)的路徑(或邊)。一個(gè)應(yīng)用系統(tǒng)的功能劃分是否合理,不同類型用戶的訪問(wèn)習(xí)慣是什么,哪些是熱點(diǎn)訪問(wèn)路徑,這些都可以通過(guò)用戶的操作軌跡來(lái)反映。本發(fā)明的展示方法能夠準(zhǔn)確直觀反映用戶行為軌跡的訪問(wèn)規(guī)律。在一些實(shí)施方式中,本申請(qǐng)?zhí)峁┮环N綜合展示用戶行為軌跡的方法,包括如下步驟:獲取用戶的行為軌跡統(tǒng)計(jì)結(jié)果,其中所述用戶行為軌跡統(tǒng)計(jì)結(jié)果包括用戶的起始訪問(wèn)路徑和跳轉(zhuǎn)訪問(wèn)路徑,每個(gè)起始訪問(wèn)路徑包括起始點(diǎn)、首次訪問(wèn)頁(yè)面和該起始訪問(wèn)路徑的訪問(wèn)次數(shù),每個(gè)跳轉(zhuǎn)訪問(wèn)路徑包括起始頁(yè)面、終止頁(yè)面和以及該跳轉(zhuǎn)訪問(wèn)路徑的訪問(wèn)次數(shù);將所述行為軌跡統(tǒng)計(jì)結(jié)果以包含多叉樹的形式展示,其中所述多叉樹的根結(jié)點(diǎn)表示該起始點(diǎn),根結(jié)點(diǎn)與其子結(jié)點(diǎn)之間的路徑表示起始訪問(wèn)路徑,所述多叉樹的除根結(jié)點(diǎn)以外的結(jié)點(diǎn)表示用戶所訪問(wèn)到的頁(yè)面,所述多叉樹的除根結(jié)點(diǎn)以外的結(jié)點(diǎn)之間的路徑表示跳轉(zhuǎn)訪問(wèn)路徑,即跳轉(zhuǎn)訪問(wèn)路徑表示用戶從父結(jié)點(diǎn)頁(yè)面跳轉(zhuǎn)到子結(jié)點(diǎn)頁(yè)面的操作,所述多叉樹的跳轉(zhuǎn)訪問(wèn)路徑具有權(quán)重,所述跳轉(zhuǎn)訪問(wèn)路徑的權(quán)重對(duì)應(yīng)于該跳轉(zhuǎn)訪問(wèn)路徑的訪問(wèn)次數(shù)。以上所述的展示用戶行為軌跡的方法能夠以準(zhǔn)確直觀的方式反映用戶的行為軌跡的訪問(wèn)規(guī)律(一般而言,根結(jié)點(diǎn)向子結(jié)點(diǎn)延伸的方向就是用戶訪問(wèn)進(jìn)一步進(jìn)行的方向);直觀反映出的各路徑的熱度(每條路徑的權(quán)重直接反映用戶進(jìn)行該類訪問(wèn)的熱度);支持訪問(wèn)量過(guò)濾操作,可以實(shí)時(shí)監(jiān)控網(wǎng)站的主要訪問(wèn)路徑,訪問(wèn)量之下的路徑則不顯示出來(lái)(通過(guò)將訪問(wèn)熱度較低的訪問(wèn)路徑刪除,可以突出反映更加熱門的訪問(wèn)路徑);從而使用戶專注分析主要訪問(wèn)頁(yè)面,即使頁(yè)面結(jié)點(diǎn)和訪問(wèn)量增加,本方法展示的樹狀圖的復(fù)雜度不會(huì)增加,仍然保持清晰可用(由于應(yīng)用中頁(yè)面數(shù)量的變化一般不會(huì)太大,而本發(fā)明的方法所展示的多叉樹的復(fù)雜度與應(yīng)用中被訪問(wèn)到的頁(yè)面的總數(shù)相關(guān),與參與統(tǒng)計(jì)的樣本的多少相關(guān)度不大,樣本的劇烈增加幾乎不會(huì)增加多叉樹的復(fù)雜度)。在本發(fā)明方法的一些實(shí)施方式中,所述多叉樹的起始訪問(wèn)路徑具有權(quán)重,所述起始訪問(wèn)路徑的權(quán)重對(duì)應(yīng)于該起始訪問(wèn)路徑的訪問(wèn)次數(shù),或者所述起始訪問(wèn)路徑的權(quán)重對(duì)應(yīng)于該起始訪問(wèn)路徑下的所有跳轉(zhuǎn)訪問(wèn)路徑中最大的權(quán)重。對(duì)于起始訪問(wèn)路徑的權(quán)重,可以直接根據(jù)訪問(wèn)次數(shù)來(lái)決定。另一種方式是,將起始訪問(wèn)路徑的權(quán)重定義為該路徑下各個(gè)路徑中最大的權(quán)重,這樣可以從根結(jié)點(diǎn)就反映出該訪問(wèn)方式所能達(dá)到的最高訪問(wèn)熱度。在本發(fā)明方法的一些實(shí)施方式中,將所有的用戶使用相同的起始點(diǎn)。采用這種方式能夠從整體上反應(yīng)用戶行為軌跡的特點(diǎn)。在本發(fā)明方法的另一些實(shí)施方式中,者用戶被分成多種類型,而相同類型的用戶使用相同的起始點(diǎn)。采用這種方式,能夠得到一個(gè)多叉樹的森林,其中每棵樹反映的是一類用戶的行為軌跡的特點(diǎn)。在本發(fā)明方法的一些實(shí)施方式中,所述權(quán)重采用路徑的特征來(lái)表示,所述路徑的特征包括選自以下的至少一種:路徑的顏色,路徑的粗細(xì),路徑上的數(shù)字,及其組合。在使用本發(fā)明的方法所展示的多叉樹中,路徑的權(quán)重可以采用多種方法來(lái)展示,比如采用顏色來(lái)展示,可以采用越深的顏色表示越高的權(quán)重;采用路徑的粗細(xì)來(lái)表示的情況下,可以采用越粗的邊表示越高的權(quán)重;采用數(shù)字表示權(quán)重的情況下,可以在路徑的邊上標(biāo)注數(shù)字;也可以采用前述各種方法的組合,比如同時(shí)采用粗細(xì)和顏色來(lái)表示權(quán)重的變化,越高權(quán)重的路徑采用越粗的和越深顏色的邊。在本發(fā)明方法的一些實(shí)施方式中,對(duì)所述多叉樹的每個(gè)子結(jié)點(diǎn)分別進(jìn)行樹的遍歷,如果該子結(jié)點(diǎn)的父結(jié)點(diǎn)到該子結(jié)點(diǎn)的路徑的權(quán)重及該子結(jié)點(diǎn)以下的所有路徑的權(quán)重低于閾值,則刪除該子結(jié)點(diǎn)及其下的所有子結(jié)點(diǎn),然后展示所述多叉樹的剩余部分。通過(guò)以上所述的實(shí)施方式使得本發(fā)明的方法支持訪問(wèn)量過(guò)濾操作,可以實(shí)時(shí)監(jiān)控網(wǎng)站的主要訪問(wèn)路徑,訪問(wèn)量之下的路徑則不顯示出來(lái),從而使用戶專注分析主要訪問(wèn)頁(yè)面。在本申請(qǐng)中,將所述行為軌跡統(tǒng)計(jì)結(jié)果以包含多叉樹的形式展示的具體方法在本發(fā)明中沒(méi)有特別限制,本領(lǐng)域技術(shù)人員知曉可以采用多種方式實(shí)現(xiàn)。在本發(fā)明方法的一些具體的實(shí)施方式中,“將所述行為軌跡統(tǒng)計(jì)結(jié)果以包含多叉樹的形式展示”包括以下步驟:將所有起始訪問(wèn)路徑形成為起始樹,其根結(jié)點(diǎn)為所述起始點(diǎn),所述起始點(diǎn)的子結(jié)點(diǎn)根據(jù)遍歷的順序按照起始訪問(wèn)路徑的權(quán)重從大到小排列,將用戶的行為軌跡統(tǒng)計(jì)結(jié)果中涉及的每個(gè)頁(yè)面所對(duì)應(yīng)的結(jié)點(diǎn)形成一棵子樹,該子樹包括在以該頁(yè)面為終點(diǎn)的所有起始訪問(wèn)路徑和跳轉(zhuǎn)訪問(wèn)路徑中權(quán)重最大的路徑的起點(diǎn)作為父結(jié)點(diǎn),和以該頁(yè)面為起點(diǎn)的所有跳轉(zhuǎn)訪問(wèn)路徑中的終點(diǎn)為子結(jié)點(diǎn),并且所有子結(jié)點(diǎn)根據(jù)遍歷的順序按跳轉(zhuǎn)訪問(wèn)路徑的權(quán)重從大到小排列,將起始結(jié)點(diǎn)作為根結(jié)點(diǎn)按照層次優(yōu)先算法對(duì)起始樹進(jìn)行樹的遍歷,并且適用以下規(guī)則中的一個(gè)或多個(gè):遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)不屬于某個(gè)環(huán),則將當(dāng)前結(jié)點(diǎn)表示為訪問(wèn)終點(diǎn),不再對(duì)該結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)屬于某個(gè)環(huán),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中的當(dāng)前結(jié)點(diǎn),繼續(xù)對(duì)該結(jié)點(diǎn)的子結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷,并且任選地將該子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)變更為當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)。在以上的具體實(shí)施方式中,判斷“判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)”成為了重要的步驟,這是因?yàn)?,雖然在實(shí)際的用戶訪問(wèn)某應(yīng)用系統(tǒng)的過(guò)程中,假設(shè)用戶從登陸頁(yè)面訪問(wèn)了初始頁(yè)面A,而在使用該應(yīng)用系統(tǒng)的過(guò)程中不斷地反復(fù)從頁(yè)面B返回到該初始頁(yè)面A,那么進(jìn)入初始頁(yè)面A的這個(gè)訪問(wèn)路徑(雖然他的權(quán)重比從頁(yè)面B返回到該初始頁(yè)面A的路徑的權(quán)重低)實(shí)際上是重要的路徑,因此在這種情況下初始頁(yè)面A的父結(jié)點(diǎn)應(yīng)該是登陸頁(yè)面,因此在A屬于某個(gè)環(huán)的情況下,應(yīng)該將初始頁(yè)面A的子樹掛上,并任選地將初始頁(yè)面A的子樹的父節(jié)點(diǎn)更新為正在遍歷的樹中初始頁(yè)面A的父結(jié)點(diǎn)。在本申請(qǐng)中,判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)的具體方法在本發(fā)明中沒(méi)有特別限制,本領(lǐng)域技術(shù)人員知曉可以采用多種方式實(shí)現(xiàn)。在本發(fā)明方法的一些具體的實(shí)施方式中,“判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)”的步驟包括:在所有的子樹構(gòu)成的森林中,從該結(jié)點(diǎn)對(duì)應(yīng)的子樹出發(fā),依次向上查找,任選地適用以下規(guī)則至少之一或者二者:如果在N次查找之內(nèi)找到了該結(jié)點(diǎn)本身,則該結(jié)點(diǎn)就屬于某個(gè)環(huán),否則就不屬于某個(gè)環(huán);和如果在N次查找之內(nèi)找到了起始點(diǎn),則該結(jié)點(diǎn)不屬于某個(gè)環(huán)。在一些實(shí)施方式中,所述方法還包括將表示為訪問(wèn)終點(diǎn)的結(jié)點(diǎn)以虛線顯示。而非訪問(wèn)終點(diǎn)的結(jié)點(diǎn)以實(shí)線顯示。虛線顯示的訪問(wèn)終點(diǎn)表示該訪問(wèn)頁(yè)面最常用的訪問(wèn)方式是從該展示樹中的該訪問(wèn)頁(yè)面的實(shí)結(jié)點(diǎn)出發(fā)的。在本申請(qǐng)中,進(jìn)行樹的遍歷的方法是按照層次優(yōu)先算法進(jìn)行的。在樹的每一層的遍歷過(guò)程中,遍歷的順序沒(méi)有限制,只要按照遍歷順序所遍歷的路徑的權(quán)重是按照從大到小的順序遍歷的即可。在一些實(shí)施方式中,所述遍歷的順序?yàn)閺淖蟮接一蛘邚挠业阶蟆1景l(fā)明的方法可以通過(guò)計(jì)算機(jī)程序來(lái)實(shí)現(xiàn),或者說(shuō)可以通過(guò)計(jì)算機(jī)指令來(lái)實(shí)現(xiàn),因此本發(fā)明還提供一種計(jì)算機(jī)可讀介質(zhì),存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,當(dāng)所述計(jì)算機(jī)可執(zhí)行指令被執(zhí)行時(shí),執(zhí)行本申請(qǐng)的任一項(xiàng)實(shí)施方式中所述的方法。進(jìn)而,本發(fā)明還提供一種計(jì)算機(jī)或者計(jì)算裝置,其包含處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,當(dāng)所述計(jì)算機(jī)執(zhí)行所述計(jì)算機(jī)可執(zhí)行指令時(shí),執(zhí)行本申請(qǐng)任一項(xiàng)實(shí)施方式中所述的方法。在一些另外的實(shí)施方式中,本申請(qǐng)還提供一種綜合展示用戶行為軌跡的方法,包括如下步驟:獲取用戶的行為軌跡,每個(gè)行為軌跡包括用戶的起始訪問(wèn)頁(yè)面以及依次訪問(wèn)的后續(xù)頁(yè)面,也即每個(gè)行為軌跡可以以一個(gè)連通有向循環(huán)子圖表示,其中該連通有向循環(huán)子圖的起始頂點(diǎn)是起始訪問(wèn)頁(yè)面,其他頂點(diǎn)表示用戶所訪問(wèn)到的后續(xù)頁(yè)面,所述有向循環(huán)圖中帶方向的路徑就是用戶訪問(wèn)頁(yè)面的方向,也即用戶從一個(gè)頁(yè)面跳轉(zhuǎn)到另一個(gè)頁(yè)面的操作,所有的連通有向循環(huán)子圖構(gòu)成有向循環(huán)圖;將所述行為軌跡以包含多叉樹的形式展示,其中所述多叉樹的根結(jié)點(diǎn)表示用戶,其他結(jié)點(diǎn)表示用戶所訪問(wèn)到的頁(yè)面;根結(jié)點(diǎn)到其下一級(jí)子結(jié)點(diǎn)之間的路徑表示起始訪問(wèn)路徑,根結(jié)點(diǎn)的每個(gè)下一級(jí)子結(jié)點(diǎn)表示一個(gè)起始訪問(wèn)頁(yè)面,該起始訪問(wèn)路徑的權(quán)重就是在該有向循環(huán)圖中該起始訪問(wèn)頁(yè)面作為起始頂點(diǎn)出現(xiàn)的次數(shù);除根結(jié)點(diǎn)之外其他結(jié)點(diǎn)之間的路徑表示跳轉(zhuǎn)訪問(wèn)路,對(duì)應(yīng)于所述有向循環(huán)圖中的路徑,該跳轉(zhuǎn)訪問(wèn)路徑的權(quán)重就是它在該有向循環(huán)圖中出現(xiàn)的次數(shù)。以上所述的展示用戶行為軌跡的方法能夠以準(zhǔn)確直觀的方式反映用戶的行為軌跡的訪問(wèn)規(guī)律(一般而言,根結(jié)點(diǎn)向子結(jié)點(diǎn)延伸的方向就是用戶訪問(wèn)進(jìn)一步進(jìn)行的方向);直觀反映出的各路徑的熱度(每條路徑的權(quán)重直接反映用戶進(jìn)行該類訪問(wèn)的熱度);支持訪問(wèn)量過(guò)濾操作,可以實(shí)時(shí)監(jiān)控網(wǎng)站的主要訪問(wèn)路徑,訪問(wèn)量之下的路徑則不顯示出來(lái)(通過(guò)將訪問(wèn)熱度較低的訪問(wèn)路徑刪除,可以突出反映更加熱門的訪問(wèn)路徑);從而使用戶專注分析主要訪問(wèn)頁(yè)面,即使頁(yè)面結(jié)點(diǎn)和訪問(wèn)量增加,本方法展示的樹狀圖的復(fù)雜度不會(huì)增加,仍然保持清晰可用(由于應(yīng)用中頁(yè)面數(shù)量的變化一般不會(huì)太大,而本發(fā)明的方法所展示的多叉樹的復(fù)雜度與應(yīng)用中被訪問(wèn)到的頁(yè)面的總數(shù)相關(guān),與參與統(tǒng)計(jì)的樣本的多少相關(guān)度不大,樣本的劇烈增加幾乎不會(huì)增加多叉樹的復(fù)雜度)。在以上所述的方法的一些實(shí)施方式中,其中在所展示的多叉樹中,所述權(quán)重采用路徑的特征來(lái)表示,所述路徑的特征包括選自以下的至少一種:路徑的顏色,路徑的粗細(xì),路徑上的數(shù)字,及其組合。在使用本發(fā)明的方法所展示的多叉樹中,路徑的權(quán)重可以采用多種方法來(lái)展示,比如采用顏色來(lái)展示,可以采用越深的顏色表示越高的權(quán)重;采用路徑的粗細(xì)來(lái)表示的情況下,可以采用越粗的邊表示越高的權(quán)重;采用數(shù)字表示權(quán)重的情況下,可以在路徑的邊上標(biāo)注數(shù)字;也可以采用前述各種方法的組合,比如同時(shí)采用粗細(xì)和顏色來(lái)表示權(quán)重的變化,越高權(quán)重的路徑采用越粗的和越深顏色的邊。在本發(fā)明方法的一些實(shí)施方式中,對(duì)所述多叉樹的每個(gè)子結(jié)點(diǎn)分別進(jìn)行樹的遍歷,如果該子結(jié)點(diǎn)的父結(jié)點(diǎn)到該子結(jié)點(diǎn)的路徑的權(quán)重及該子結(jié)點(diǎn)以下的所有路徑的權(quán)重低于閾值,則刪除該子結(jié)點(diǎn)及其下的所有子結(jié)點(diǎn),然后展示所述多叉樹的剩余部分。通過(guò)以上所述的實(shí)施方式使得本發(fā)明的方法支持訪問(wèn)量過(guò)濾操作,可以實(shí)時(shí)監(jiān)控網(wǎng)站的主要訪問(wèn)路徑,訪問(wèn)量之下的路徑則不顯示出來(lái),從而使用戶專注分析主要訪問(wèn)頁(yè)面。在本申請(qǐng)中,將所述行為軌跡以包含多叉樹的形式展示的具體方法在本發(fā)明中沒(méi)有特別限制,本領(lǐng)域技術(shù)人員知曉可以采用多種方式實(shí)現(xiàn)。在本發(fā)明方法的一些具體的實(shí)施方式中,“將所述行為軌跡以包含多叉樹的形式展示”包括以下步驟:形成起始樹,所述起始樹的根結(jié)點(diǎn)為用戶,所述根結(jié)點(diǎn)的子結(jié)點(diǎn)為所述有向循環(huán)圖中每個(gè)連通有向循環(huán)子圖的起始頂點(diǎn),所有起始頂點(diǎn)根據(jù)遍歷的順序按照起始頂點(diǎn)所對(duì)應(yīng)的起始路徑的權(quán)重從大到小排列,將所述有向循環(huán)圖中涉及的每個(gè)頁(yè)面(頂點(diǎn))所對(duì)應(yīng)的結(jié)點(diǎn)形成一棵子樹,該子樹包括在以該頁(yè)面(頂點(diǎn))為終點(diǎn)的所有路徑中權(quán)重最大的路徑的起點(diǎn)作為父結(jié)點(diǎn),和以該頁(yè)面(頂點(diǎn))為起點(diǎn)的所有路徑中的終點(diǎn)為子結(jié)點(diǎn),并且所有子結(jié)點(diǎn)根據(jù)遍歷的順序按所述子結(jié)點(diǎn)所對(duì)應(yīng)的路徑的權(quán)重從大到小排列,從根結(jié)點(diǎn)開始按照層次優(yōu)先算法對(duì)起始樹進(jìn)行樹的遍歷,并且適用以下規(guī)則中的一個(gè)或多個(gè):遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)不屬于某個(gè)環(huán),則將當(dāng)前結(jié)點(diǎn)表示為訪問(wèn)終點(diǎn),不再對(duì)該結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)屬于某個(gè)環(huán),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中的當(dāng)前結(jié)點(diǎn),繼續(xù)對(duì)該結(jié)點(diǎn)的子結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷,并且任選地將該子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)變更為當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)。在以上的具體實(shí)施方式中,判斷“判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)”成為了重要的步驟,這是因?yàn)?,雖然在實(shí)際的用戶訪問(wèn)某應(yīng)用系統(tǒng)的過(guò)程中,假設(shè)用戶從登陸頁(yè)面訪問(wèn)了初始頁(yè)面A,而在使用該應(yīng)用系統(tǒng)的過(guò)程中不斷地反復(fù)從頁(yè)面B返回到該初始頁(yè)面A,那么進(jìn)入初始頁(yè)面A的這個(gè)訪問(wèn)路徑(雖然他的權(quán)重比從頁(yè)面B返回到該初始頁(yè)面A的路徑的權(quán)重低)實(shí)際上是重要的路徑,因此在這種情況下初始頁(yè)面A的父結(jié)點(diǎn)應(yīng)該是登陸頁(yè)面。在本申請(qǐng)中,判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)的具體方法在本發(fā)明中沒(méi)有特別限制,本領(lǐng)域技術(shù)人員知曉可以采用多種方式實(shí)現(xiàn)。在本發(fā)明方法的一些具體的實(shí)施方式中,“判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)”的步驟包括:在所有的子樹構(gòu)成的森林中,從該結(jié)點(diǎn)對(duì)應(yīng)的子樹出發(fā),依次向上查找,任選地適用以下規(guī)則至少之一或者二者:如果在N次查找之內(nèi)找到了該結(jié)點(diǎn)本身,則該結(jié)點(diǎn)就屬于某個(gè)環(huán),否則就不屬于某個(gè)環(huán);和如果在N次查找之內(nèi)找到了起始點(diǎn),則該結(jié)點(diǎn)不屬于某個(gè)環(huán)。在一些實(shí)施方式中,所述方法還包括將表示為訪問(wèn)終點(diǎn)的結(jié)點(diǎn)以虛線顯示。而非訪問(wèn)終點(diǎn)的結(jié)點(diǎn)以實(shí)線顯示。虛線顯示的訪問(wèn)終點(diǎn)表示該訪問(wèn)頁(yè)面最常用的訪問(wèn)方式是從該展示樹中的該訪問(wèn)頁(yè)面的實(shí)結(jié)點(diǎn)出發(fā)的。在本申請(qǐng)中,進(jìn)行樹的遍歷的方法是按照層次優(yōu)先算法進(jìn)行的。在樹的每一層的遍歷過(guò)程中,遍歷的順序沒(méi)有限制,只要按照遍歷順序所遍歷的路徑的權(quán)重是按照從大到小的順序遍歷的即可。在一些實(shí)施方式中,所述遍歷的順序?yàn)閺淖蟮接一蛘邚挠业阶?。本發(fā)明的方法可以通過(guò)計(jì)算機(jī)程序來(lái)實(shí)現(xiàn),或者說(shuō)可以通過(guò)計(jì)算機(jī)指令來(lái)實(shí)現(xiàn),因此本發(fā)明還提供一種計(jì)算機(jī)可讀介質(zhì),存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,當(dāng)所述計(jì)算機(jī)可執(zhí)行指令被執(zhí)行時(shí),執(zhí)行本申請(qǐng)的任一項(xiàng)實(shí)施方式中所述的方法。進(jìn)而,本發(fā)明還提供一種計(jì)算機(jī)或計(jì)算裝置,其包含處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,當(dāng)所述計(jì)算機(jī)執(zhí)行所述計(jì)算機(jī)可執(zhí)行指令時(shí),執(zhí)行本申請(qǐng)任一項(xiàng)實(shí)施方式中所述的方法。以上所述的方法都涉及到能夠以有向循環(huán)圖體現(xiàn)的用戶操作軌跡的樹狀展示方法。在更一般的情況下,實(shí)際上有向循環(huán)圖可能描述各類與時(shí)間相關(guān)的事件,而本發(fā)明的構(gòu)思也適用于展示任何有向循環(huán)圖。例如,人們?cè)诂F(xiàn)實(shí)生活中的行為軌跡也能夠收集到,能夠以有向循環(huán)圖的方式存儲(chǔ),然而需要一種方法來(lái)將這些行為軌跡準(zhǔn)確直觀地展示出來(lái),從而指導(dǎo)生產(chǎn)和規(guī)劃。因此,更一般地,本申請(qǐng)還提供有向循環(huán)圖的展示方法,其中所述有向循環(huán)圖包括多個(gè)連通有向循環(huán)子圖,所述方法包括:將所述有向循環(huán)圖以多叉樹的形式展示,其中多叉樹的根結(jié)點(diǎn)的下一級(jí)子結(jié)點(diǎn)包括所述多個(gè)連通有向循環(huán)子圖的起始頂點(diǎn),所述根結(jié)點(diǎn)到其下一級(jí)子結(jié)點(diǎn)的路徑稱為起始路徑,所述起始路徑的權(quán)重是所述起始頂點(diǎn)在所述有向循環(huán)圖中作為起始頂點(diǎn)出現(xiàn)的次數(shù),所述多叉樹中根結(jié)點(diǎn)之外的結(jié)點(diǎn)之間的跳轉(zhuǎn)路徑對(duì)應(yīng)于所述有向循環(huán)圖中相應(yīng)結(jié)點(diǎn)之間的路徑,該跳轉(zhuǎn)路徑的父結(jié)點(diǎn)為所述有向循環(huán)圖中相應(yīng)路徑的起點(diǎn),該跳轉(zhuǎn)路徑的子結(jié)點(diǎn)為所述有向循環(huán)圖中相應(yīng)路徑的終點(diǎn),所述跳轉(zhuǎn)路徑的權(quán)重對(duì)應(yīng)于所述多叉樹的路徑對(duì)應(yīng)地在所述有向循環(huán)圖中出現(xiàn)次數(shù)。以上所述的有向循環(huán)圖的展示方法也能夠達(dá)到前面所述的優(yōu)點(diǎn),例如準(zhǔn)確直觀的方式反映有向循環(huán)圖的內(nèi)在關(guān)系,直觀反映出的各路徑的熱度,支持熱度過(guò)濾操作,即使數(shù)據(jù)量增加,所展示的多叉樹的復(fù)雜度也幾乎不會(huì)增加,在用于具體的應(yīng)用時(shí),能夠?yàn)榫唧w的應(yīng)用提供設(shè)計(jì)指導(dǎo)。在以上所述的方法的一些實(shí)施方式中,所述權(quán)重采用路徑的特征來(lái)表示,所述路徑的特征包括選自以下的至少一種:路徑的顏色,路徑的粗細(xì),路徑上的數(shù)字,及其組合。在使用本發(fā)明的方法所展示的多叉樹中,路徑的權(quán)重可以采用多種方法來(lái)展示,比如采用顏色來(lái)展示,可以采用越深的顏色表示越高的權(quán)重;采用路徑的粗細(xì)來(lái)表示的情況下,可以采用越粗的邊表示越高的權(quán)重;采用數(shù)字表示權(quán)重的情況下,可以在路徑的邊上標(biāo)注數(shù)字;也可以采用前述各種方法的組合,比如同時(shí)采用粗細(xì)和顏色來(lái)表示權(quán)重的變化,越高權(quán)重的路徑采用越粗的和越深顏色的邊。本發(fā)明的方法對(duì)于具體的展示樹狀圖的圖形方式(比如每個(gè)結(jié)點(diǎn)的形狀,顏色,大小,路徑所采用的線條形式等)并沒(méi)有限制,只要能夠?qū)⑿纬傻亩嗖鏄湟杂^察者容易接受的方式顯示出來(lái)即可。在本發(fā)明方法的一些實(shí)施方式中,對(duì)所述多叉樹的每個(gè)子結(jié)點(diǎn)分別進(jìn)行樹的遍歷,如果該子結(jié)點(diǎn)的父結(jié)點(diǎn)到該子結(jié)點(diǎn)的路徑的權(quán)重及該子結(jié)點(diǎn)以下的所有路徑的權(quán)重低于閾值,則刪除該子結(jié)點(diǎn)及其下的所有子結(jié)點(diǎn),然后展示所述多叉樹的剩余部分。通過(guò)以上所述的實(shí)施方式使得本發(fā)明的方法支持訪問(wèn)量過(guò)濾操作,可以實(shí)時(shí)監(jiān)控主要訪問(wèn)路徑,訪問(wèn)量之下的路徑則不顯示出來(lái),從而使用戶專注分析主要訪問(wèn)路徑。在本申請(qǐng)中,將所述有向循環(huán)圖以多叉樹的形式展示的具體方法在本發(fā)明中沒(méi)有特別限制,本領(lǐng)域技術(shù)人員知曉可以采用多種方式實(shí)現(xiàn)。在本發(fā)明方法的一些具體的實(shí)施方式中,“將所述有向循環(huán)圖以多叉樹的形式展示”包括以下步驟:形成起始樹,所述起始樹包括根結(jié)點(diǎn)和下一級(jí)子結(jié)點(diǎn),所述根結(jié)點(diǎn)的下一級(jí)子結(jié)點(diǎn)為所述有向循環(huán)圖中多個(gè)連通有向循環(huán)子圖的起始頂點(diǎn),所有起始頂點(diǎn)根據(jù)遍歷的順序按照起始頂點(diǎn)所對(duì)應(yīng)的起始路徑的權(quán)重從大到小排列,將所述有向循環(huán)圖涉及的每個(gè)頂點(diǎn)形成一棵子樹,該子樹包括在以該頂點(diǎn)為終點(diǎn)的所有路徑中權(quán)重最大的路徑的起點(diǎn)作為父結(jié)點(diǎn),在統(tǒng)計(jì)權(quán)重時(shí)起始頂點(diǎn)的父結(jié)點(diǎn)視為根結(jié)點(diǎn)來(lái)計(jì)算起始路徑的權(quán)重,和以該頂點(diǎn)為起點(diǎn)的所有路徑中的終點(diǎn)為子結(jié)點(diǎn),并且所有子結(jié)點(diǎn)根據(jù)遍歷的順序按所述子結(jié)點(diǎn)所對(duì)應(yīng)的路徑的權(quán)重從大到小排列,從根結(jié)點(diǎn)開始按照層次優(yōu)先算法對(duì)起始樹進(jìn)行樹的遍歷,并且適用以下規(guī)則中的一個(gè)或多個(gè):遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)不屬于某個(gè)環(huán),則將當(dāng)前結(jié)點(diǎn)表示為訪問(wèn)終點(diǎn),不再對(duì)該結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷;遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果該結(jié)點(diǎn)對(duì)應(yīng)的子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),則判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán),如果該結(jié)點(diǎn)屬于某個(gè)環(huán),則將該結(jié)點(diǎn)對(duì)應(yīng)的子樹掛到當(dāng)前所遍歷的樹中的當(dāng)前結(jié)點(diǎn),繼續(xù)對(duì)該結(jié)點(diǎn)的子結(jié)點(diǎn)進(jìn)行進(jìn)一步的遍歷,并且任選地將該子樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)變更為當(dāng)前所遍歷的樹中該結(jié)點(diǎn)的父結(jié)點(diǎn)。在以上的具體實(shí)施方式中,判斷“判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)”成為了重要的步驟,這樣的設(shè)計(jì)來(lái)源于具體問(wèn)題的分析,例如以上的一種綜合展示用戶行為軌跡的方法所涉及的問(wèn)題。在本申請(qǐng)中,判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)的具體方法在本發(fā)明中沒(méi)有特別限制,本領(lǐng)域技術(shù)人員知曉可以采用多種方式實(shí)現(xiàn)。在本發(fā)明方法的一些具體的實(shí)施方式中,“判斷該結(jié)點(diǎn)是否屬于某個(gè)環(huán)”的步驟包括:在所有的子樹構(gòu)成的森林中,從該結(jié)點(diǎn)對(duì)應(yīng)的子樹出發(fā),依次向上查找,任選地適用以下規(guī)則至少之一:如果在N次查找之內(nèi)找到了該結(jié)點(diǎn)本身,則該結(jié)點(diǎn)就屬于某個(gè)環(huán),否則就不屬于某個(gè)環(huán);和如果在N次查找之內(nèi)找到了起始點(diǎn),則該結(jié)點(diǎn)不屬于某個(gè)環(huán)。在一些實(shí)施方式中,所述方法還包括將表示為訪問(wèn)終點(diǎn)的結(jié)點(diǎn)以虛線顯示。這樣做是把該結(jié)點(diǎn)標(biāo)記為虛結(jié)點(diǎn)。而非訪問(wèn)終點(diǎn)的結(jié)點(diǎn)以實(shí)線顯示,為實(shí)結(jié)點(diǎn)。虛線顯示的訪問(wèn)終點(diǎn)(或者說(shuō)是以虛結(jié)點(diǎn)形式顯示的結(jié)點(diǎn))表示該訪問(wèn)最常用的訪問(wèn)方式是從該展示樹中的該結(jié)點(diǎn)所對(duì)應(yīng)的實(shí)結(jié)點(diǎn)出發(fā)的。在本申請(qǐng)的技術(shù)方案中,每個(gè)表示相同訪問(wèn)頁(yè)面的結(jié)點(diǎn)只以實(shí)結(jié)點(diǎn)的形式出現(xiàn)一次,因此使得能夠以最精簡(jiǎn)的樹狀圖顯示出用戶行為軌跡的訪問(wèn)規(guī)律。在本申請(qǐng)中,進(jìn)行樹的遍歷的方法是按照層次優(yōu)先算法進(jìn)行的。在樹的每一層的遍歷過(guò)程中,遍歷的順序沒(méi)有限制,只要按照遍歷順序所遍歷的路徑的權(quán)重是按照從大到小的順序遍歷的即可。在一些實(shí)施方式中,所述遍歷的順序?yàn)閺淖蟮接一蛘邚挠业阶蟆1景l(fā)明的方法所展示的多叉樹中的根結(jié)點(diǎn)由于是虛擬的,它與其下一級(jí)子結(jié)點(diǎn)之間的路徑關(guān)系也是虛擬的,因此,在實(shí)際的展示示例中,可以將根結(jié)點(diǎn)和根結(jié)點(diǎn)與其下一級(jí)子結(jié)點(diǎn)之間的路徑都構(gòu)圖成虛線。本發(fā)明的方法可以通過(guò)計(jì)算機(jī)程序來(lái)實(shí)現(xiàn),或者說(shuō)可以通過(guò)計(jì)算機(jī)指令來(lái)實(shí)現(xiàn),因此本發(fā)明還提供一種計(jì)算機(jī)可讀介質(zhì),存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,當(dāng)所述計(jì)算機(jī)可執(zhí)行指令被執(zhí)行時(shí),執(zhí)行本申請(qǐng)的任一項(xiàng)實(shí)施方式中所述的方法。進(jìn)而,本發(fā)明還提供一種計(jì)算機(jī)或計(jì)算裝置,其包含處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,當(dāng)所述計(jì)算機(jī)執(zhí)行所述計(jì)算機(jī)可執(zhí)行指令時(shí),執(zhí)行本申請(qǐng)任一項(xiàng)實(shí)施方式中所述的方法。實(shí)施例具體以用戶小王為例,某網(wǎng)站共有五個(gè)頁(yè)面,分別是頁(yè)面A、頁(yè)面B、頁(yè)面C、頁(yè)面D、頁(yè)面E。小王在一段時(shí)間內(nèi)總共訪問(wèn)三次該網(wǎng)站。每次訪問(wèn)的順序依次為:第一次: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那么該如何刻畫小王的操作軌跡呢?如果直接用一個(gè)網(wǎng)(即有向循環(huán)圖)來(lái)表示的話,具體如圖1中所示。該方案存在以下幾個(gè)缺點(diǎn):1.從圖上無(wú)法反映用戶的操作順序,不知道用戶是從哪個(gè)結(jié)點(diǎn)開始,到哪個(gè)結(jié)點(diǎn)結(jié)束的。2.不能直觀看出訪問(wèn)熱度信息,比如哪條路徑訪問(wèn)的最多。3.當(dāng)結(jié)點(diǎn)數(shù)量及訪問(wèn)次數(shù)增加時(shí),該圖將變?yōu)闃O其復(fù)雜,以致不可用。本實(shí)施例提出了如下的展示方法:根據(jù)用戶訪問(wèn)頁(yè)面的順序,用一種多叉樹的拓?fù)鋱D來(lái)展現(xiàn)用戶的操作軌跡,訪樹的根結(jié)點(diǎn)代表訪問(wèn)入口(或者用戶),多叉樹從上到下的每一層代表用戶每次訪問(wèn)的第幾頁(yè)。結(jié)點(diǎn)連接線條的粗細(xì)代表著訪問(wèn)的頻率,用戶點(diǎn)擊訪問(wèn)越多的路徑,線條越粗,反之亦然。通過(guò)訪問(wèn)量過(guò)濾操作,可以實(shí)時(shí)監(jiān)控網(wǎng)站的主要訪問(wèn)路徑,訪問(wèn)量之下的路徑則不顯示出來(lái),從而使用戶專注分析主要訪問(wèn)頁(yè)面。本方案優(yōu)勢(shì):1.直觀反映出用戶訪問(wèn)的頁(yè)面軌跡。2.直觀反映出的各路徑的熱度。3.支持訪問(wèn)量過(guò)濾操作,可以實(shí)時(shí)監(jiān)控網(wǎng)站的主要訪問(wèn)路徑,訪問(wèn)量之下的路徑則不顯示出來(lái),從而使用戶專注分析主要訪問(wèn)頁(yè)面。4.即使頁(yè)面結(jié)點(diǎn)和訪問(wèn)量增加,本拓?fù)鋱D的復(fù)雜不會(huì)增加,保持清晰可用。該方案具體實(shí)現(xiàn)如下:1.增加一個(gè)虛擬入口頁(yè)面“S`”,以表示每次訪問(wèn)的開始結(jié)點(diǎn)。增加后上面的三次訪問(wèn)表示為:第一次: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.統(tǒng)計(jì)出所有結(jié)點(diǎn)路徑及各結(jié)點(diǎn)路徑的次數(shù),上述三次訪問(wèn)的統(tǒng)計(jì)結(jié)果如下表所示:表1節(jié)點(diǎn)路徑次數(shù)S′→A1S′→B2A→B4B→C5B→D1C→A2C→D4C→E1D→C4E→A13.以上述結(jié)果為基礎(chǔ)構(gòu)建拓?fù)鋱D。首先,對(duì)于每個(gè)結(jié)點(diǎn)應(yīng)用以下兩條規(guī)則:a)選取一個(gè)權(quán)重最重的結(jié)點(diǎn)作為自己的父結(jié)點(diǎn)。如結(jié)點(diǎn)A,能夠到達(dá)A的路徑有S'→A(1),C→A(2),E→A(1),則選取C作為自己的父結(jié)點(diǎn)。b)將其所有子結(jié)點(diǎn)按權(quán)重從左到右依次排序。則可以生成圖2中所示的森林。4.按照以下規(guī)則生成多叉樹的拓?fù)鋱Da)S`為拓?fù)鋱D的根結(jié)點(diǎn)。b)從左至右依次遍歷。c)遍歷過(guò)的邊或結(jié)點(diǎn)以斜線填充表示,沒(méi)有遍歷過(guò)的用未填充表示。d)虛線結(jié)點(diǎn)表示不再遍歷子結(jié)點(diǎn)(訪問(wèn)終點(diǎn))。e)遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果森林里該結(jié)點(diǎn)的父結(jié)點(diǎn)正好是當(dāng)前拓?fù)鋱D中的父結(jié)點(diǎn)時(shí),則當(dāng)前結(jié)點(diǎn)標(biāo)為斜線填充,同時(shí)從該森林里找出屬于該結(jié)點(diǎn)的樹,掛到當(dāng)前拓?fù)鋱D中。f)遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果森林里該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前拓?fù)鋱D中的父結(jié)點(diǎn),且通過(guò)h中的規(guī)則判斷,該結(jié)點(diǎn)不屬于某一個(gè)環(huán),則將當(dāng)前結(jié)點(diǎn)標(biāo)為虛邊,并且斜線填充。g)遍歷到某個(gè)結(jié)點(diǎn)時(shí),如果森林里該結(jié)點(diǎn)的父結(jié)點(diǎn)不是當(dāng)前拓?fù)鋱D中的父結(jié)點(diǎn),且通過(guò)h中的規(guī)則判斷,該結(jié)點(diǎn)屬于某一個(gè)環(huán),則更新森林里屬于該結(jié)點(diǎn)的那棵樹,將當(dāng)前拓?fù)鋱D中的父結(jié)點(diǎn)作為樹中該結(jié)點(diǎn)的父結(jié)點(diǎn),同時(shí)該棵樹掛到當(dāng)前拓?fù)鋱D中。拓?fù)鋱D中該結(jié)標(biāo)為斜線填充。h)判斷一個(gè)結(jié)點(diǎn)是否屬于某個(gè)環(huán):如果從森林里中該結(jié)點(diǎn)那個(gè)樹出發(fā),依次向上查找,如果在N次查找之內(nèi)找到了自己(N為所有結(jié)點(diǎn)個(gè)數(shù),如當(dāng)前示例中的N為6),則該結(jié)點(diǎn)就屬于某個(gè)環(huán),否則就不屬于某個(gè)環(huán)。i)拓?fù)鋱D中不存在沒(méi)有未被遍歷過(guò)的結(jié)點(diǎn),即不存在未填充結(jié)點(diǎn)時(shí),則整個(gè)拓?fù)鋱D完成。具體生成過(guò)程如下:1)引入根結(jié)點(diǎn)S`,形成起始樹,如圖3所示。2)圖中未填充結(jié)點(diǎn)為B、A。按從左到右的順序先遍歷B。森林里B的父結(jié)點(diǎn)是A,拓?fù)鋱D中B的父結(jié)點(diǎn)是S`,A與S`不是同一結(jié)點(diǎn),此時(shí)再?gòu)纳掷镆来尾檎褺的父,結(jié)果為:BACB,即B屬于環(huán)中結(jié)點(diǎn),所以需要更新森林,將森林中B的父結(jié)點(diǎn)改為拓?fù)鋱D中的父結(jié)點(diǎn)。更新后的森林如圖4所示。更新后的多叉樹如圖5所示。3)再遍歷A,A結(jié)點(diǎn)符合規(guī)則f。更新后的多叉樹如圖6所示。4)再遍歷C,C結(jié)點(diǎn)符合規(guī)則e。更新后的多叉樹如圖7所示。5)再遍歷第三層中的D,D結(jié)點(diǎn)符合規(guī)則f。更新后的多叉樹如圖8所示。6)再遍歷第4層中的D,D結(jié)點(diǎn)符合規(guī)則e。更新后的多叉樹如圖9所示。7)再遍歷第4層中的A,A結(jié)點(diǎn)符合規(guī)則e。更新后的多叉樹如圖10所示。8)再遍歷第4層中的E,E結(jié)點(diǎn)符合規(guī)則e。更新后的多叉樹如圖11所示。9)再遍歷第5層中的C,C結(jié)點(diǎn)符合規(guī)則f。更新后的多叉樹如圖12所示。10)再遍歷第5層中的B,B結(jié)點(diǎn)符合規(guī)則f。更新后的多叉樹如圖13所示。11)再遍歷第5層中的A,A結(jié)點(diǎn)符合規(guī)則f。更新后的多叉樹如圖14所示。12)拓?fù)鋱D中不存在未填充結(jié)點(diǎn),則結(jié)構(gòu)生成完成。最后將每條邊按實(shí)際權(quán)重進(jìn)行標(biāo)注(此處使用邊的粗細(xì)來(lái)表示)。更新后的多叉樹如圖15所示。從圖15中可以年看出用戶最多的操作軌跡是:S`→B→C→D→C。該方案中,可以通過(guò)訪問(wèn)量過(guò)濾操作,實(shí)時(shí)監(jiān)控網(wǎng)站的主要訪問(wèn)路徑,低于該訪問(wèn)量路徑則不顯示出來(lái),從而使用戶專注分析主要訪問(wèn)頁(yè)面。單擊某個(gè)結(jié)點(diǎn)時(shí)將圖中相同的結(jié)點(diǎn)以同一特殊顏色標(biāo)出來(lái),該結(jié)點(diǎn)的所有入口及出口信息以表格形式展現(xiàn)出來(lái),輔助查看。在一個(gè)實(shí)際的應(yīng)用中,對(duì)收集到的用戶操作軌跡進(jìn)行了總結(jié)和展示。最終的展現(xiàn)結(jié)果如圖16所示。從圖16中可以看出:訪問(wèn)入口為根結(jié)點(diǎn),根結(jié)點(diǎn)的子結(jié)點(diǎn)為首頁(yè)面和項(xiàng)目選擇頁(yè)面,項(xiàng)目選擇頁(yè)面的子結(jié)點(diǎn)是首頁(yè)面,首頁(yè)面下存在多條路徑,其中從首頁(yè)面到Bug列表頁(yè)面是最通常使用的頁(yè)面,用戶進(jìn)行更加深度的訪問(wèn)是通過(guò)控制臺(tái)頁(yè)面進(jìn)行的。在圖16中,無(wú)論收集到的用戶操作軌跡的復(fù)雜度如何增加,該多叉樹的展示情況基本上不會(huì)太改變,改變得比較多的應(yīng)該是多叉樹的路徑(邊)的相對(duì)權(quán)重。此外,本發(fā)明的方法所展示的多叉樹中的根結(jié)點(diǎn)由于是虛擬的,它與其下一級(jí)子結(jié)點(diǎn)之間的路徑關(guān)系也是虛擬的,因此,在實(shí)際的展示示例中,可以將根結(jié)點(diǎn)和根結(jié)點(diǎn)與其下一級(jí)子結(jié)點(diǎn)之間的路徑都構(gòu)圖成虛線。以上所述僅是本公開的示范性實(shí)施方式,而非用于限制本公開的保護(hù)范圍,本公開的保護(hù)范圍由所附的權(quán)利要求確定。當(dāng)前第1頁(yè)1 2 3