處理數據
鏈接:https://pan.baidu.com/s/11mzYYnU4DBucH0lUhvXrrw 密碼:wgbr
操作流程
統計分析→外觀→佈局→過濾
:
具體操作步驟:
打開honglou_edge.csv與honglou_node.csv節點
顯示標籤
統計分析:
模塊化計算
外觀
設置:我們這裏節點本身顏色與標籤顏色都選擇的Modularity Class,節點大小與標籤尺寸都選擇的度
節點——顏色
節點——大小
節點——標籤顏色
節點——標籤尺寸
佈局
過濾
目的:取一些小點的度和大點的度,過濾掉中間的度
步驟:將拓撲---度範圍,拉入到查詢裏面,然後進行度範圍設置,最終進行選擇
目的:將2個度範圍進行並集運算
步驟:將拓撲---並集,拉入查詢裏面,然後將兩個度範圍拉入並集裏
預覽
在下圖主要點擊節點標籤裏面的字體與比例大小就行
結果分析
統計分析裏面的不同算法→選擇不同的渲染模式→最終圖形,因此我們需要搞懂算法原理,才能進一步分析
1由於我們節點本身大小與節點標籤尺寸都是選擇Rank中的度,所以由圖可以明顯看出誰的度越大,說明在個圖中與其他點聯繫越大,作用越大
2由於我們節點本身顏色和標籤顏色的渲染方式都選的模塊化,所以整個圖以度大的節點最終呈現出社區穩定
對上面操作流程的進一步理解:
統計分析
模塊化:Modularity Measure(模塊化度量值),由Newman等人提出,是目前常用的一種衡量網絡中社區穩定度的方法。
定義:
模塊度值的大小主要取決於網絡中結點的社區分配C,即網絡的社區劃分情況,可以用來定量的衡量網絡社區劃分質量,其值越接近1,表示網絡劃分出的社區結構的強度越強,也就是劃分質量越好。因此可以通過最大化模塊度Q來獲得最優的網絡社區劃分。
PageRank
PageRank算法主要應用在搜索引擎的搜索功能中,其主要用來計算網頁的重要程度,將最重要的網頁展示在網頁的前面,此算法主要圍繞以下兩個假設:
①如果存在一個網頁,它被許多其他的鏈接鏈接到,則說明這個網頁比較重要,則此網頁的PageRank值比較高。
②如果存在一個網頁,它本身的PageRank值比較高,且此網頁又鏈接了一個網頁,則這個被鏈接的網頁比較重要,其PageRank值較高。
外觀:
度(degree)—— 一個節點有 n 條邊即度數爲 n
佈局:
Force Atlas:
基於力導向 (Force-directed) 的算法作爲彈簧理論算法的一類典型,被廣泛應用於描述社交網絡等關係型信息圖。它的原理其實非常易懂,我們可以把整張網絡想象成一個虛擬的物理系統。系統 中的每個節點都可以看成是一個帶有一定能量的放電粒子,粒子與粒子之間存在某種庫侖斥力,使它們兩兩相互排斥。同時,有些粒子間被一些“邊”所牽連,這些 邊產生類似彈簧的胡克引力,又緊緊牽制着“邊”兩端的粒子。在粒子間斥力和引力的不斷作用下,粒子們從隨機無序的初態不斷髮生位移,逐漸趨於平衡有序的終 態。同時整個物理系統的能量也在不斷消耗,經過數次迭代後,粒子之間幾乎不再發生相對位移,整個系統達到一種穩定平衡的狀態,即能量趨於零。此刻,最終的 這幅理想的社交網絡圖也基本繪製完成。
基本上絕大多數算法都遵循着這樣的原則,即:
- 將網絡看成一個頂點爲鋼環,邊爲彈簧的物理系統
- 不斷迭代,使整個系統的總能量達到最小
清單. 力導向核心算法實現僞代碼
Set up initial node positions randomly Loop for k For each node u For each node v net-force += Coulomb_repulsion( u, v ) End For End For For each edge e compute net-force += Hooke_attraction( u1, u2 ) // u1, u2 is start and end node of edge e End For Update x and y values with each net-force // every node has its own net-force End Loop
僞代碼的整體思想歸納如下:
- 隨機分佈初始節點位置;
- 計算每次迭代局部區域內兩兩節點間的斥力所產生的單位位移(一般爲正值);
- 計算每次迭代每條邊的引力對兩端節點所產生的單位位移(一般爲負值);
- 步驟 2、3 中的斥力和引力系數直接影響到最終態的理想效果,它與節點間的距離、節點在系統所在區域的平均單位區域均有關,需要開發人員在實踐中不斷調整;
- 累加經過步驟 2、3 計算得到的所有節點的單位位移;
- 迭代 n 次,直至達到理想效果。