【问题标题】:Trees / Graphs, How to represent Multiple parents and children?树/图,如何表示多个父母和孩子?
【发布时间】:2011-12-27 02:49:44
【问题描述】:

我希望你能帮助我解决一些关于图表/树的技术问题。

我正在尝试显示系统中对象的创建。 它实际上是一个树结构。


它有一些有趣的要求。

一) 一个节点可以有多个子节点。说20。也许更多。 IE。一个库可以被多个对象使用。

b) 一个子节点可以有多个父节点。说最多 20 个。 IE。许多库被一个过程或对象使用

c) 一个特定的节点可以出现在多个地方。 IE。在许多过程中调用通用打印或日志记录函数

注意:这只是技术术语中的一个示例,我希望您会理解。 这不是我需要建模的问题。不用讨论了。


我想了想,发现它不是简单的二叉树,也不是链表。

1) 我可以将所有数据保存在哪种数据结构中?

2) 我怎样才能在 java 中生成这个图表?

3) 什么是可以绘制这种树的免费开源绘图软件? 比如Neo4j

也许是格式: - 作为一棵树,有根、树干、树枝和树叶? - 就像您现在看到的描绘社交网络的图表一样,根节点位于中心?

4) 有什么好的网站,或者关于这个主题的教程?

非常感谢!

【问题讨论】:

    标签: graph tree


    【解决方案1】:

    查看prefuse。它很旧,但它有效。不过,您将不得不花费一些时间来学习如何使用它。到达那里后,只需创建一个prefuse.data.Graph 对象并填写您的节点及其邻居,然后创建可视化。

    如果您愿意接受其他解决方案,请查看d3.js - 在浏览器的 SVG 元素上使用 javascript 绘制图形。

    【讨论】:

      【解决方案2】:

      如果这真的是关于对象,那么UML 可能会有所帮助。它旨在生成对象关系图。那里有大量免费的 UML 工具。我会下载一个,看看你能不能把你的应用程序硬塞进去。

      【讨论】:

        【解决方案3】:

        JGraphT 可以表示您的图形结构,并且可以使用JGraph 进行可视化。

        有关可视化示例,请查看this

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-03-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多