1

最近、非常に大きなデータ ソースを処理する必要があり、GoJS のパフォーマンスを向上させる方法があるかどうか疑問に思っていました。

GoJS は非常に効率的にデータを処理してTreeViewおり、サイトが完全にロードされた直後に I'm going to make が表示されます。残念ながら、ビューをパンすると、ダイアグラムが少し遅れ始めます。

私は今、そのラグを最小限に抑える方法を探しています。

レイアウト オプションをいじってみましたが、パフォーマンスが大幅に向上することはありませんでした。

ダイアグラムには、「比較的」少数のノード (正確には 498) を持つダイアグラムがありますが、残念ながら私のテンプレートはかなり複雑です。ネストされた itemArray があり、その行内に行と列を生成します。もう 1 つのことは、「LayeredTreeView」モデルを少し変更したバージョンを使用していることです。

これらのノードは、388 個の非表示グループに属しています。クロスリダクションなどのレイアウトを使用せずに生成すると、適度な時間しかかかりません。

また、GoJS 紹介のパフォーマンスサイトを発見しました。そこでは、複雑なテンプレートが GoJS を遅くすることが言及されています。これはこの場合でしょうか?

4

1 に答える 1

3

複雑なテンプレートは単純なテンプレートよりも構築に時間がかかるため、ノードが複雑で詳細な場合は読み込み時間が長くなります。

ただし、ダイアグラムですべてのノードとリンクが作成されて初期化されると、スクロール (別名パン) は非常に高速になります。

仮想化により、最初に作成して表示するノードとリンクが非常に少なくなるため、読み込み時間が短縮されます。ただし、ビューポートの変更に合わせてノードとリンクを作成する必要があるため、仮想化ではスクロールとズームが遅くなります。また、そのパフォーマンス ページが示唆しているように、仮想化の実装にはさらに多くのプログラミング作業が必要です。また、状況によっては、実現可能でなかったり、より高速であったりすることさえありません。

于 2015-09-01T14:48:02.397 に答える