本人作为大一狗,有幸参加了老师的工业大数据知识图谱可视化研究的项目,那么,选择一个好用的可视化工具当然是必要的——一个好的工具能够大大降低后期研发成本和维护成本。
根据本次调研的需要,可视化工具需要遵循以下几个原则:
现阶段可视化工具种类繁多,发展迅速,根据本次选型原则第一条,即能够制作知识图谱,我们初步筛选到了以下“可视化工具”(不全):
————————————————————————————————
Tableau、R-ggplot2、Echarts、igraph、networkx、neo4j、tigergraph、
Cayley、BDP、DATEfocus、Antv G6、FineReport、d3js、cytoscape.js
————————————————————————————————
当然,对于初步接触可视化的我们来说,这些就只是一个个毫无意义的单词。
在更深入地了解了每一个后,我们才意识到这里面并非全部都是可视化工具,比如neo4j,其实是一个图数据库,它需要像D3js这类的js库来实现数据的可视化。也就是说,我们要找的是前端展示的工具。
我们又考虑到前面的选型原则,最终我们将范围缩小到D3.js、cytoscape.js、Antv G6、igraph、networkx这五个里面,接下来我们将对这五个的优劣势一一分析。
D3 的全称是Data-Driven Documents,D3.js是一个JavaScript库,它可以通过数据来操作文档。D3可以通过使用HTML、SVG和CSS把数据鲜活形象地展现出来。它可以说是可视化的先驱了。
官方网站:http://www.d3js.org
Cytoscape.js是一个用JS编写的开源图库
官方网站:https://js.cytoscape.org
也许需要一定的代码量算是吧。。。
AntV 是蚂蚁金服全新一代数据可视化解决方案。G6是它的一个简单、易用、完备的图可视化引擎,它在高定制能力的基础上,提供了一系列设计优雅、便于使用的图可视化解决方案。能帮助开发者搭建属于自己的图可视化、图分析、或图编辑器应用。
官方网站:https://antv.vision/zh
networkx是用python语言编写的软件包,是一个用Python语言开发的图论与复杂网络建模工具。
基于上面的调研,我们最终决定使用cytoscape.js作为我们的可视化工具。在确定工具后,接下来就是对相应的知识进行学习的过程了。项目将持续进行更新。
之前对这些工具都不太熟悉,后来经过我们调查,发现Antv G6并没有产生费用的情况,而且其代码量也不会太简单,再加之它可能和其它阿里的工具联动性更大,我们决定对于Antv G6和cytoscape.js同时进行学习,初步学习后再做定论。然后再对选定的工具进行全面的学习。
https://www.cnblogs.com/minglex/p/9205160.html
https://antv.vision/zh
https://www.jianshu.com/p/c3800c61d2fb
https://blog.csdn.net/dahaiaixiaohai/article/details/89669526
http://www.d3js.org
https://js.cytoscape.org