【问题标题】:Open source libraries to design directed graphs [closed]用于设计有向图的开源库 [关闭]
【发布时间】:2011-01-23 12:50:42
【问题描述】:

我将需要编写一个程序,该程序获取人员列表并以类似有向图的方式将他们连接在一起。整个项目的 GUI 方面非常重要。图表必须允许大量交互。比如选择几个人,隐藏其他人,移动他们。

此外,该软件将需要能够提供其他类型的 GUI 功能,例如多个选项卡、文本框等。

应用程序必须非常高效。例如,它必须能够处理数百个甚至数千个小部件。

因此,我想知道哪些开源库(此时它们所用的编程语言并不重要——我只是想了解一下所有好的东西)可以让我开发这样的软件?你会推荐什么?

编辑:您能否还链接到解释我如何编写可以与生成的图形交互的 GUI 的教程?例如鼠标事件。

【问题讨论】:

    标签: user-interface interface graph


    【解决方案1】:

    看看 Graphviz,尤其是它的左撇子组件。它应该满足您的需求。

    http://en.wikipedia.org/wiki/Graphviz

    【讨论】:

    • 谢谢。 Graphviz 看起来像我需要使用的东西。但是,我更喜欢在我的软件中使用诸如 Java 或 Ruby 之类的编程语言。您是否有一个很好的教程来展示如何在用户单击节点时从 GUI(即 Tk、GTK、Qt 或 Swing)添加鼠标事件?我一直无法弄清楚自己该怎么做。感谢您的宝贵时间。
    【解决方案2】:

    您可能想看看Dynagraph

    编辑:一篇介绍 Graphviz 和 Dynagraph 的文章可在 here 获得。

    【讨论】:

    • 谢谢。是否有任何教程或绑定库可以轻松添加事件,例如在节点上单击鼠标?
    【解决方案3】:

    JGraphTJGraph 结合使用怎么样?

    在这里查看simple demo 与基本交互

    【讨论】:

    • JGraph webstart 演示应用看起来很漂亮:jgraph.com/jgraph.html 不幸的是它看起来只是商业的?
    • JGraph/JGraphX 不是商业的,它们是 BSD 许可的。您所指的也是 mxGraph,它是同一个人 jgraph.com/mxgraph.html 的 javascript 库。 mxGraph 是商业的
    【解决方案4】:

    根据您的实际目标和需求,您可以考虑查看processing.org。该站点有许多演示,并且与许多其他库一样,它是免费的。使用 Processing 不需要您学习太多。它类似于 Java 并用 Java 编写,但允许您忽略大部分 Java 结构和代码,只做您想做的事情。

    由于您提到要使用 x 或 y 进行编码,听起来您还没有做出语言决定,所以这可能值得您花时间。在那里花 15 分钟看演示,看看它是否提供了您正在寻找的东西。如果单一解决方案的速度是您的标准之一,这可能会做到。

    【讨论】:

      【解决方案5】:

      我的第一个想法是 ILOG Views(用于 Java、.Net、C++),现在归 IBM 所有,但它们的定价相当高。我的第二个想法是 yFiles(用于 Java 或 .NET),可能与 yEd(仅限 Java)结合使用。

      如果仍然不能解决问题,请查看this list 上的替代品(未分类,有些工具不是开源的,其他工具由于其他原因不适合您)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-10-08
        • 1970-01-01
        • 2015-07-17
        • 2011-06-26
        • 2011-02-05
        • 1970-01-01
        • 2011-05-21
        • 1970-01-01
        相关资源
        最近更新 更多