哪些算法适用于实时数据和直接操作的交互式/实时图形绘制?
做不到这一点-您使用哪些库来绘制图形?
建议;
- Prefuse信息可视化工具包
- 还有其他人吗?
顺便说一句-我的意思是图论意义上的图-点和线
- 任何语言
- 现场我的意思是图表应该在屏幕上一次可操作。
哪些算法适用于实时数据和直接操作的交互式/实时图形绘制?
做不到这一点-您使用哪些库来绘制图形?
建议;
顺便说一句-我的意思是图论意义上的图-点和线
我会推荐 Jeff Heer 研究过的任何库:
我相信这三个项目都是开源的。Jeff Heer 非常擅长在他的代码中引用论文,至少在 Prefuse 库中是这样。查看 Prefuse 源代码:
BalloonTreeLayout:使用的算法是 G. Melançon 和 I. Herman 的算法,来自他们的研究论文 Circular Drawings of Rooted Trees,数学和计算机科学中心报告,报告编号 INS–9817,1998。
ForceDirectedLayout.java:没有提到参考,但是有很多评论描述了它是如何工作的。
FruchtermanReingoldLayout.java:参考Jung。在他们的网站上,我发现了一篇论文,其中提到了各种算法
NodeLinkTreeLayout.java:使用的算法是 Christoph Buchheim、Michael Jünger 和 Sebastian Leipert 的研究论文改进 Walker 的算法以在线性时间运行,图形绘图 2002。该算法纠正了 Walker 算法中的性能问题,该算法推广了 Reingold 和 Tilford 的算法用于整理树的绘图方法,以支持在任何给定节点具有任意数量的子树的树。
RadialTreeLayout.java:使用的算法是 Ka-Ping Yee、Danyel Fisher、Rachna Dhamija 和 Marti Hearst 在他们的研究论文Animated Exploration of Dynamic Graphs with Radial Layout , InfoVis 2001 中使用的算法。该算法计算了一个径向布局,它考虑了可能的因素尺寸变化,并保持方向和排序约束,以促进布局配置之间的平滑和可理解的转换。
SquarifiedTreeMapLayout:这个特定的算法取自 Bruls、DM、C. Huizing 和 JJ van Wijk,“Squarified Treemaps”在Data Visualization 2000 中,Proceedings of the Joint Eurographics and IEEE TCVG Sumposium on Visualization,2000,第 33-42 页。可在http://www.win.tue.nl/~vanwijk/stm.pdf在线获取。有关 TreeMaps 的更多信息,请参阅http://www.cs.umd.edu/hcil/treemap-history
prefuse 可视化工具包看起来是个不错的选择。
Prefuse 支持一组丰富的数据建模、可视化和交互功能。它为表格、图形和树提供优化的数据结构、大量布局和视觉编码技术,并支持动画、动态查询、集成搜索和数据库连接。Prefuse 是用 Java 编写的,使用 Java 2D 图形库,并且很容易集成到 Java Swing 应用程序或 Web 小程序中。Prefuse 根据 BSD 许可条款获得许可,可自由用于商业和非商业目的。(来自主页)
绘图是一个很大的领域。这是图形绘图研究社区网站的链接。他们有一个专门关于绘图的年度会议。我还可以建议阅读一些David Harel 教授的出版物——他的研究领域之一是绘图,例如这篇论文。在一般情况下,这似乎是一个很难解决的问题。也许您可以将您的应用程序限制为某些受限制的图形子集(平面图可能过于严格)。带有一小组顶点的简单图可能会产生更容易的操作。
有一些与Graphviz相关的漂亮论文。尤其:
我使用 Dot 语言来描述图形。而且,Dot 编译器的输出包括 SVG,它是 XML 格式,可以嵌入到 XHTML 中。
http://en.wikipedia.org/wiki/DOT_language