Gephi編程實戰-基於gephi-toolkit開發的一套簡單framework

簡介

Gephi是一款開源免費跨平臺基於JVM的複雜網絡分析軟件,,其主要用於各種網絡和複雜系統,動態和分層圖的交互可視化與探測開源工具。

Gephi提供客戶端工具,爲相關使用人員提供豐富的功能去分析網絡圖譜,但是想要基於Gephi做編程開發的同學們,需要引入gephi-toolkit。

Gephi提供gephi-toolkit是一套工具包(jar包集合),進行圖編程,並提供了相對豐富的插件。

Gephi官方源碼:https://github.com/gephi

實戰

結合對Gephi的實踐,本人基於gephi-toolkit開發了一套簡單的framework,意在幫助想要快速基於gephi進行編程的同學使用,或者作爲demo學習。

項目maven引入gephi-toolkit 0.9.1版本

<dependency>
    <groupId>org.gephi</groupId>
    <artifactId>gephi-toolkit</artifactId>
    <version>0.9.1</version>
</dependency>

該項目託管在:https://github.com/likeaboy/kgraph

例子

可以參見項目源碼中的Demo類:

GetNodeDemo爲根據節點數據生成單個節點,添加到Graph內存模型中,並輸出到圖描述文件gexf文件裏。

GetRelatedNodeDemo以GetNodeDemo生成的gexf文件爲基礎,讀入相關節點刷新Graph內存模型,並 生成新的gexf文件。

該框架支持多種數據源,可通過policy實現自己獲取數據的邏輯,然後轉換成框架自己的數據模型,用戶不必關心後續的分析計算,計算結果以gexf圖描述文件輸出。

基於框架計算出的gexf文件在不同展示工具下的效果:

使用KGraph-framework繪製的gexf圖描述文件在gephi客戶端中渲染的效果:
這裏寫圖片描述

這裏寫圖片描述

使用KGraph-framework繪製gexf圖文件在echart中渲染的效果:
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章