prefuse初解.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
prefuse初解

因为最近要做的项目设计到可视化编程,先使用了dot,老板说太素了,要点精彩的,就让人推荐了个工具prefuse,下下来一看才知道这是一个 Java语言的编程框架,以前没好好学Java,还好c++功底比较厚实,一个下午时间将Java“复习”了一遍,开始调试了一下prefuse里带的 Demo,效果果然炫的可以啊。本来想好好学一下,去网上搜了一下资料,全是对Demo的引用,使用的确实不多,不过这也不能怪咱们网民,我去官网上看他 们才出了一个初级用户手册,花了我一个上午将里面东西好好看了一下,基本上搞明白了是怎么回事,调试了里面的一个Example,功能效果确实不错。一下 就是我的一点认识,希望可以对大家有所帮助。因为这是一个可视化框架,所以使用时选择一个调试工具是比较好的选择,尤其像我这种Java基础不太牢靠的,当然在你下载的文件夹下面的 readme里写的非常详细,我就是在他们推荐的Eclipse工具下调试了一下Demo。当然其他的可以直接导入工程的工具也是一个不错的选择,不知道 好不好使,有兴趣的可以试一下。既然是一个框架那就要搞清楚它到底有哪些可用的部分,哪些需要我们做的东西:用户手册里写的非常的详细,首先是它的框架图,可视化参考模型 (visualization reference model)这个是本框架的开发者提供的一个东西,类似mvc,熟悉VC的可以类比MFC,只不过这里它更偏向于用户界面的开发。上传图片不容易,这里就 略过了,有兴趣的朋友可以直接下手册来看。强调一点的就是,我们输入的绘图数据都是要转化为prefuse内部数据的形式,graph,tree,table其中前两个都是后一个的一种形式,这个过程是prefuse内部专门的类转换的,再这里提出就是提醒大家在使用的时候段看看它提供的Java文档,少走弯路。 接下来就是介绍这个框架能用的东西,所有能用的东西都存在prefuse的src包里,使用的时候将这个文件夹里的东西带上就可以了,剩下的就是Java编程的东西了,我没这个发言权,有兴趣的大家可以自己研究。现在我将例子程序代码粘上:这是一个社会网络的绘制过程。当然导入的包视你的程序而定,注意导对了就可以了,我图省事就导入的比较多。里面加了我的一部分注释,作为大家的参考 import java.io.*; import java.awt.Cursor; import java.awt.event.MouseEvent; import java.awt.geom.Point2D; import java.util.Iterator; import javax.swing.BorderFactory; import javax.swing.JComponent; import javax.swing.JFrame; import javax.swing.SwingUtilities; import prefuse.Constants; import prefuse.Display; import prefuse.Visualization; import prefuse.action.ActionList; import prefuse.action.RepaintAction; import prefuse.action.assignment.DataColorAction; import prefuse.action.assignment.ColorAction; import prefuse.action.assignment.SizeAction; import prefuse.action.layout.RandomLayout; import prefuse.action.layout.graph.ForceDirectedLayout; import prefuse.activity.Activity; import prefuse.activity.ActivityAdapter; import prefuse.activity.ActivityListener; import prefuse.controls.*; import prefuse.data.Schema; import prefuse.data.Graph; import prefuse.data.io.*; import prefuse.data.tuple.TupleSet; import prefuse.render.DefaultRendererFactory; import prefuse.render.LabelRenderer; import prefuse.util.ColorLib; import prefuse.uti

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档