Prefuse及相关数据结构可视化工具

时间:2021-06-28 08:47:05

这段时间在忙学校的SRT项目,关于信息检索可视化的。

本来打算用OpenGL做界面,后来导师说用Prefuse,恩,那是11月底,刚听说Prefuse,然后就各种百度、谷歌,CSDN上帖子也发了,发现没什么人用的·······尴尬啊!

虽然找到了Prefuse的官网,但除了源码包之外发现没什么东西,连文档都是在线版的,后来总算找到了chm格式的文档。

(文档下载:preuse-javadoc

VeryGood!


国外人就是不一样,Prefuse的作者在FAQ里面列举了几个可视化工具,大牛看得上眼的,自然也是大牛~要是国内的,估计只会说我的东西最好!其他的都是垃圾~看来技术这一块,还是要“崇洋”啊!

下面列一下:


Piccolo - A Java toolkit for structured 2D graphics using a scenegraph abstraction.

地址:http://www.cs.umd.edu/hcil/piccolo/


Processing - A graphics library and IDE serving as an artist's digital sketchbook.

地址:http://processing.org/


The Visualization Toolkit (VTK) - A 3D graphics and visualization toolkit.

地址:http://public.kitware.com/VTK/


JUNG - A Java graph processing and visualization library.

地址:http://jung.sourceforge.net/


The InfoVis Toolkit - A Java toolkit supporting a number of visualization techniques.

地址:http://ivtk.sourceforge.net/


Improvise - An application for end-user authoring of interactive visualizations.

地址:http://www.personal.psu.edu/


传几张官网上偷来的Prefuse效果图吧(其实土豆网上有个视频介绍的更好,但不够清晰)~

Prefuse及相关数据结构可视化工具

Prefuse及相关数据结构可视化工具

Prefuse及相关数据结构可视化工具

Prefuse及相关数据结构可视化工具Prefuse及相关数据结构可视化工具Prefuse及相关数据结构可视化工具


下面这两张是本人实际操作Demo时的截图:

Prefuse及相关数据结构可视化工具




Prefuse及相关数据结构可视化工具


下面来抄一份别人的prefuse笔记吧!(说明:下面内容摘自http://turmoilchaosif.iteye.com/blog/1219415


prefuse是一个数据可视化的open source class library,我主要用它来可视化社交网络,我将在这里记下一些我摸索到的有意思的东西,与大家共勉。 


1.Graph的边权重值与边长关联 
刚开始我用的是RadialTreeLayout,一直在找直接或间接的设置边长的方法,都失败了;后来发现RadialTreeLayout的边长生成 与 选取节点后主要节点的转换有关系,所以放弃了使用RadialTreeLayout,转而使用ForceDirectedLayout,只需要覆盖掉getSpringCoefficient(EdgeItem e)方法即可自定义边长 


2.数据源 
我用的是GraphML格式的数据,这种标记语言不仅结构规范,而且可以轻松地添加自定义的节点和边的字段,它可以被GraphMLReader()直接读取,并转换为相应的数据结构。 
至于GraphML的生成,既可以用DOM4J等API生成,也可以调用JGraphT中GmlExporter导出 


3.汉字显示 
prefuse是可以显示汉字的,需要在定义相应的组件的字体的时候使用如,FontLib.getFont("微软雅黑", Font.PLAIN, 16) 


4.controls 
prefuse.controls下是一系列封装好的控制功能,只需要在对Display的实例调用addControlListener(),传入所需的control,即达到目的。也可以通过ControlAdapter自定义所需的control。