图形表示工具,用于具有特定功能的海量数据

时间:2018-07-04 07:08:39

标签: javafx graph bigdata cytoscape.js cytoscape

我正在构建一个 JavaFX 应用,我想在其中显示我的大量数据的交互式图形。例如将cytoscape放入 javaFX 应用中,并在我的应用中使用图形。我的节点最多可以有30000个节点,但通常在过滤节点后大约有200个节点。

主要功能(按重要性排序):

  1. 生成具有最佳布局,良好外观,良好性能和低重叠度(与cytoscape相同)的图
  2. 选择一些节点并标记它们(与cytoscape中的ctrl + L相同)
  3. 选择某些节点的邻居
  4. 从3号开始构建新图
  5. 基于权重,边数和...过滤图
  6. 隐藏并显示一些选定的边缘和节点
  7. 捕获已构建图形的图像

其他功能:

  1. 放大缩小
  2. 节点标记
  3. 多个颜色节点和边缘
  4. 根据重量改变边缘的宽度
  5. 更改特定节点和边缘的颜色而无需重建图
  6. 定向边缘支持

我已经测试了cytoscape.js,但是无法在javaFX浏览器中使用它。我现在正在测试WebVowl。有什么比这些更好的目的吗?如果您建议不能直接在javaFX应用程序中放置的内容,请说明如何操作。 谢谢

1 个答案:

答案 0 :(得分:2)

根据您要执行的操作,可以使用Cytoscape作为数据模型,并围绕它构建JavaFX渲染器。我想这样做,但是这与我们的资金规划无关。

我已经完成了一些JavaFX项目,这些项目可能是一个很好的起点,但是它们没有直接与Cytoscape集成,后者具有更丰富的子网,组等模型。

https://github.com/AdamStuart/appFX/tree/master2/src/main/java/diagrams

其中之一是基于TESIS DYNAware GmbH的一个很好的例子。

您已经意识到,关键问题是在试图可视化网络之前先对其进行过滤。如果您尝试构建交互式的内容,则与30000个节点关联的边数将使大多数系统陷入困境。