-3

マップ上にポイントを表示するためのd3.jsのパフォーマンスに関していくつか問題があります。

ここで見つけたこの美しいコードを、コードの開始点として使用していますhttps://gist.github.com/bobuss/1985684

基本的に、リンク上のコードは、マップ上にポイントを描画し、線を接続するために曲線を描画します。ただし、データポイント(約300)を追加しようとすると、ブラウザがクラッシュするか、ALOTより遅れます。

ですから、この場合、実際にパフォーマンスを改善する方法はないかと思いました。

ありがとう!

4

1 に答える 1

2

いくつかのゲノムデータ(散布図で23kポイント)を表示するためにd3を使用することを検討しました。

23k domノードを追加すると、ほとんどのブラウザーがクラッシュします。インタラクティブ機能(ホバー、クリック)を実行しようとすると、イベントリスナーが多すぎて、すべてが停止します。

私はd3が大好きで、プロトビスの時代から使用していますが、私の経験では、数千の要素の後で使用できなくなり、そのようなチャートを作成する必要があるたびに、最初から作成してキャンバスに実装することになりました。そして、そこにはまったく新しい一連の問題が発生します-独自のヒットテスト、イベントの実装、ホバーのシミュレーション...

その悪夢。

少なくとも私の知る限りでは、JSの「ビッグデータ」チャートに良い解決策はありません。

そして、それは正直なところ残念です。私のMacBookProがファンを最高速度で回転させ、ブラウザが応答しないのを見ると、i7 8GB RAMマシンで25kポイントをプロットしようとしているので、それはナンセンスです。

しかし、それは私たちが意図されていない何かのためにブラウザを使おうとしたときに私たちが得るものです。はい、2D GPUアクセラレーションは役に立ちましたが、それほどではありません。

于 2013-03-24T21:03:13.613 に答える