图数据库JanusGraph实战[5]:JanusGraph可视化之Gephi

栏目: 编程工具 · 发布时间: 5年前

内容简介:作者:胡佳辉(家辉)  日期:2018年12月29日 CSDN博客:图数据库JanusGraph实战是一个系列文章,将全面介绍JanusGraph的各个方面。本文是该系列的第五篇,主要介绍JanusGraph的可视化工具Gephi。在本系列的第一篇文章中已经介绍了JanusGraph支持五种可视化工具,分别如下:

图数据库JanusGraph实战[5]: JanusGraph可视化之Gephi

作者:胡佳辉(家辉)  日期:2018年12月29日 CSDN博客: https://blog.csdn.net/gobitan

图数据库JanusGraph实战是一个系列文章,将全面介绍JanusGraph的各个方面。本文是该系列的第五篇,主要介绍JanusGraph的可视化工具Gephi。

JanusGraph可视化概述

在本系列的第一篇文章中已经介绍了JanusGraph支持五种可视化工具,分别如下:

  • Cytoscape

  • Gephi

  • Graphexp

  • KeyLines

  • Linkurious

今天,我们来看下JanusGraph中的图数据如何使用Gephi可视化 工具 来呈现。

Gephi可视化工具简介

Gephi是一款优秀的用于各种图和网络可视化与探索的免费开源软件。Gephi支持各种操作系统平台,包括 Windows, Mac OS X和Linux.

Gephi下载与安装

[1] 下载

进入 https://gephi.org/ ,当前最新版本为gephi-0.9.2-windows,大约73M。

[2] 安装

直接双击,默认安装即可。

安装Gephi的Graph Streaming插件

进入"工具"->"插件"菜单,在"可用插件"中选中"Graph Streaming",并点击左下方的"安装"按钮。

图数据库JanusGraph实战[5]:JanusGraph可视化之Gephi

然后,按照提示完成"Graph Streaming"插件的安装。安装完之后,需要重启Gephi。

Gephi与JanusGraph的集成

第一步:先启动好JanusGraph Server

Linux下采用非root账户在JanusGraph安装包的根目录下,直接用"bin/janusgraph.sh start"启动。默认的存储后端采用的的Cassandra,索引存储采用ElasticSearch。Cassandra和ElasticSearch都不需要单独起动,脚本启动的时候会自动依次启动这两个服务。

第二步:配置Gephi

[1] 启动Gephi并新建工程

菜单操作为:"文件"->"新建项目"

[2] 重命名工作区

注意:这一步如果没弄对会导致连接不上。

菜单操作为:"工作区"->"重命名",设为"janusgraphspace"

图数据库JanusGraph实战[5]:JanusGraph可视化之Gephi

[3] 启动 Gephi Master Server

鼠标右击左侧Streaming窗口中的"Master Server",然后选择"Start",启动Master Server。启动后,就默认开启了一个服务,URL为:http://{ip地址}:8080/janusgraphspace,8080后面的路径就是工作区的名称。例如我本机(Windows)的 http://172.27.13.178:8080/janusgraphspace

第三步:tinkerpop.gephe插件的使用

环境说明:Gephi运行在我本地的Windows上,而JanusGraph Server部署在远程CentOS服务器上的。他们的IP地址分别为:

Gephi:192.168.142.1

JanusGraph Server:192.168.142.164

[1] 打开Gremlin Console

进入JanusGraph的根目录之后,输入"bin/gremlin.sh"打开Gremlin Console

[2] 激活tinkerpop.gephi插件

gremlin> :plugin use tinkerpop.gephi

==>tinkerpop.gephi activated

[3] 连接到tinkerpop.gephi插件

gremlin> :remote connect tinkerpop.gephi

==>Connection to Gephi - http://localhost:8080/workspace1 with stepDelay:1000, startRGBColor:[0.0, 1.0, 0.5], colorToFade:g, colorFadeRate:0.7, startSize:10.0,sizeDecrementRate:0.33

由于tinkerpop.gephi插件默认连接的Gephi地址为" http://localhost:8080/workspace1 ",但实际上我们的Gephi不在服务器上,而是在本地客户机上,所以后续还需要修改Gephi插件的配置。

[4]  配置tinkerpop.gephi插件

1) 配置gephi的host

gremlin> :remote config host 192.168.142.1

==>Connection to Gephi - http://192.168.142.1:8080/workspace1 with stepDelay:1000, startRGBColor:[0.0, 1.0, 0.5], colorToFade:g, colorFadeRate:0.7, startSize:10.0,sizeDecrementRate:0.33

2) 配置gephi的worksapce

gremlin> :remote config workspace janusgraphspace

==>Connection to Gephi - http://192.168.142.1:8080/janusgraphspace with stepDelay:1000, startRGBColor:[0.0, 1.0, 0.5], colorToFade:g, colorFadeRate:0.7, startSize:10.0,sizeDecrementRate:0.33

说明:如果想查看还有哪些可以配置,可以通过":remote config help"查看.

[5] 创建测试图数据

gremlin> graph = TinkerFactory.createModern()

==>tinkergraph[vertices:6 edges:6]

gremlin>

[6] 把测试数据推送到Gephi中

gremlin> :> graph

==>tinkergraph[vertices:6 edges:6]

==>false

gremlin>

[7] 在Gephi中查看导入的数据

图数据库JanusGraph实战[5]:JanusGraph可视化之Gephi

从右上角的"上下文"窗口中可以看到导入了6个节点和6条边,但这个图很丑,需要格式化(美化)。

Gephi中图数据的格式化

经过一番折腾,图最终显示如下:

图数据库JanusGraph实战[5]:JanusGraph可视化之Gephi

具体的过程就不详细描述了,请参考Gephi的官方帮助文档。 https://gephi.org/users/tutorial-layouts/https://gephi.org/users/tutorial-visualization/

其他命令

清空Gephi工作区内的图数据

gremlin> :> clear

Gephi workspace cleared

参考资料:

[1] http://janusgraph.org/

[2] http://tinkerpop.apache.org/docs/current/reference/#gephi-plugin

本文原发于 "图数据库与图计算"公众号,欢迎关注!也可以加入"图数据库与图计算"QQ群(463749267)


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Flask Web开发:基于Python的Web应用开发实战

Flask Web开发:基于Python的Web应用开发实战

[美] Miguel Grinberg / 安道 / 人民邮电出版社 / 2014-12 / 59.00元

本书不仅适合初级Web开发人员学习阅读,更是Python程序员用来学习高级Web开发技术的优秀参考书。 • 学习Flask应用的基本结构,编写示例应用; • 使用必备的组件,包括模板、数据库、Web表单和电子邮件支持; • 使用包和模块构建可伸缩的大型应用; • 实现用户认证、角色和个人资料; • 在博客网站中重用模板、分页显示列表以及使用富文本; • 使用基于......一起来看看 《Flask Web开发:基于Python的Web应用开发实战》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具