add level-of-detail for scatter plots (and geo/sf plots)
まだ誰も着手していません。
- 主要言語
- JavaScript
- スター
- 18.3k
- フォーク
- 2k
- 平均マージ
- 2日 12時間
- マージ済み PR(30日)
- 28
説明
Re-opening issue #4190 (copied below) as it is still something that is often an issue in our projects. Further expanding to include sf/geo plots as it would also be useful there as well.
I've been working on some data that has a LOT of lat/long scatter points in a dense area which causes a lot of lag. about 1500-2000 points per viewport seems to work quite fluidly, but above that the click and drag/zoom tools really start to lag (click and drag is by far the worst).
There is already a "max displayed" markers parameter (which I'm putting to use), however it causes "holes" to appear until the user has zoomed in significantly and due to the way the points are organised (equal steps in lat/long) there are weird striations and patterns that occur.
It would look a lot better if I were able to have a Level-of-detail (LOD) parameter. I have a number of thoughts on how this could be achieved.
- The simplest of which would be a parameter that takes an array of sizes at zoom levels and combined with "max displayed" could be used to grow/shrink the markers at different zooms.
- Simplest for the user might be a parameter which when active clusters the points (much like the google marker clustering).
- More complex could be that the user supplies an array of their own data points to display at various zoom levels and the marker size for each step.
- Finally, the user could add a trace for each of the different zoom levels and specify at which level the trace should be visible.
Obviously some of these could be done 3rd party by tapping onto the events, however it would be more suitable to add to the core library I think.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
この issue では、ファイル、テスト、または特定のエントリーポイントは指定されていません。まず "max displayed" マーカーの挙動とズーム操作の処理を確認し、その後、scatter および geo/sf プロットについて、提案された LOD アプローチのうちプロジェクトがサポートすべきものを判断してください。完了には、合意された設計、実装範囲、および高密度なポイントビューに対するパフォーマンス検証が必要です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript
- 領域
- data-visualization
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100