使用GoJS时提高性能

Improve performance when using GoJS

本文关键字:高性能 GoJS 使用      更新时间:2023-09-26

我最近必须处理非常大的数据源,并且想知道是否有一种方法可以提高GoJS的性能。

GoJS非常有效地处理我的数据,我试图制作的TreeView在网站完全加载后不久显示。不幸的是,当平移视图时,图表不知何故开始有点延迟。

我现在正在寻找一种方法来减少延迟到最小。

我试着摆弄布局选项,但它并没有导致显著的性能提高。

对于图表,我有一个"相对"较少节点的图表(准确地说是498),但不幸的是,我的模板相当复杂。它有一个嵌套的itemArray,它在该行内生成行和列。另一件事是,我使用了一个稍微修改版本的"LayeredTreeView"模型。

这些节点在388个不可见组中。在不使用交叉缩减等布局的情况下生成它只需要适度的时间。

另外我刚刚发现了GoJS介绍的表演网站。前面已经提到,复杂的模板会让GoJS变慢。会是这样吗?

复杂的模板比简单的模板需要更长的时间来构建,所以当节点复杂和详细时,加载时间会更长。

然而,一旦在图中创建并初始化了所有的节点和链接,滚动(又名平移)应该非常快。

虚拟化减少了加载时间,因为初始需要创建和显示的节点和链接非常少。然而,虚拟化确实减慢了滚动和缩放速度,因为节点和链接必须随着视口的变化而创建。正如性能页面所建议的那样,实现虚拟化需要更多的编程工作。根据具体情况,它甚至可能不可行或更快。