图数据库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",并点击左下方的"安装"按钮。

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

Gephi与JanusGraph的集成

第一步:先启动好JanusGraph Server

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

第二步:配置Gephi

[1] 启动Gephi并新建工程

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

[2] 重命名工作区

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

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

[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中查看导入的数据

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

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)

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

  1. 图数据库JanusGraph实战[6]: JanusGraph+HBase+ElasticSearch的环境搭建

    图数据库JanusGraph实战[6]: JanusGraph+HBase+ElasticSearch的环境搭建 作者:胡佳辉(家辉)  日期:2019年01月14日 CSDN博客:https://b ...

  2. 图数据库Neo4j实战(全网最详细教程)

    1.图数据库Neo4j介绍 1.1 什么是图数据库(graph database) 随着社交.电商.金融.零售.物联网等行业的快速发展,现实社会织起了了一张庞大而复杂的关系网,传统数据库很难处理关系运 ...

  3. SpringBoot 整合 Neo4j,图数据库 YYDS!

    前一段时间,boss 交给我个任务,让我调研一下知识图谱技术.虽说有点 NLP 的底子,不过研究起这个来还是满头的包,终于还是在搜集了不少资料后划拉出来 50 多页的 PPT. 今天先浅浅的给大家分享 ...

  4. 图数据库初探——1. 选择一个合适的图数据库

    1. 图数据库概览 Tips: 不了解一个领域的时候,先去找找这个领域的白皮书. 想做一个知识图谱,需要调研一下图数据库,就直接去找这方面的白皮书.相对权威但是不是非常实时的内容 或者直接搜索 知识图 ...

  5. 白话大数据 | 关于图数据库,没有比这篇更通俗易懂的啦

    近年来图数据库越来越火,讨论的话题也越来越多,但很多小伙伴还不清楚图数据库到底是个啥?和传统关系型数据库有什么区别?具体又有什么特点?那今天小编将通过有个男人叫小帅的故事来给大家通俗易懂地介绍下什么是 ...

  6. 图数据库|如何从零到一构建一个企业股权图谱系统

    本文首发于 Nebula Graph Community 公众号 我们知道无论是监管部门.企业还是个人,都有需求去针对一个企业.法人做一些背景调查,这些调查可以是法律诉讼.公开持股.企业任职等等多种多 ...

  7. 基于图数据库、图算法、图神经网络的 ID Resolution/ID Mapping 大数据分析方法与代码示例

    本文首发于 NebulaGraph 公众号 "本文是一个基于 NebulaGraph 上的图数据库.图算法.图神经网络的 ID Resolution/ID Mapping 方法综述,除了基本 ...

  8. Ultipa图数据库是怎样全面支持ARM架构?

    Ultipa图数据库是通过在编程语言层面最大化挖掘底层硬件产出的高性能.高密度并发.实时图数据库.因此,其底层核心存储与计算引擎.查询语言解析器与优化器代码都采用C/C++实现,并通过最大化X86-6 ...

  9. java 连接janusgraph_基于JanusGraph的大数据图数据库

    导读 知识图谱是近来很火的概念,很多领域都希望能用知识图谱解决一些问题.在零售领域其实也有使用知识图谱的场景,比如阿里使用知识图谱进行商品智能导购以及商品"巡检",而我想试验着把知 ...

最新文章

  1. python爬虫获取的网页数据为什么要加[0-Python爬虫实战1-解决需要爬取网页N秒后的内容的需求...
  2. 华为交换机ACL配置
  3. 行为型模式:策略模式
  4. C和C++线性表基本概念
  5. MPMovieplayercontroller
  6. 读:[你必须知道的.NET] 第五回:深入浅出关键字---把new说透
  7. 好工作为什么会与你擦肩而过?
  8. 误码率越高越好还是越低越好_夜间护理步骤越多越好还是越少越好?NFF
  9. 数据结构---BF字符串模式匹配
  10. pow(x,y)函数
  11. 在Linux中模拟击键和鼠标移动
  12. 剑指Offer之把数组排成最小的数
  13. map-based exploration of intrinsic shape differences and variability
  14. (转)Android权限列表permission说明 (一)
  15. Python 基础课程第五天
  16. 创建Rss Feeds(一)
  17. springboot 架构图
  18. RJ45网线接口详解
  19. win10计算机切换用户,win10系统账户切换的三种方法
  20. 分享一个返利系统源码,前端uni+后端php开发的影票返利系统源码

热门文章

  1. Git指令 复制原分支代码到新分支
  2. 制定计划要具体可执行,才能更容易实现
  3. “金牌城市”,烟台新坐标
  4. orb-slam2代码详解之system
  5. 人力资源管理如何为企业增值
  6. 【无机纳米材料科研制图——3ds Max 0104】3dmax石墨烯、碳纳米管、富勒烯建模
  7. python模拟登录bwapp(不带图形验证码)
  8. Python 爬虫初探
  9. oracle通过sqlplus 创建用户和密码
  10. 316、海康威视监控弱电工程师精心整理的技术知识点