29

10^5 のデータ ポイントで構成される大規模なデータセットがあります。そして今、大規模なデータセットに関連する次の質問を検討しています。

非常に大きなデータセットを視覚化する効率的な方法はありますか? 私の場合、ユーザー セットがあり、各ユーザーには 10^3 個のアイテムがあります。全部で 10^5 個のアイテムがあります。ユーザー間ですばやく比較できるように、一度に各ユーザーのすべてのアイテムを表示したいと考えています。リストの使用を提案する機関もありますが、この大きなデータセットを扱う場合、リストが唯一の選択肢ではないと思います。

ノート

一度に各ユーザーのすべてのアイテムを表示したい。

これは、ユーザーをクリックしたときにすべてのデータポイントを表示したいことを意味し、2 つの用途をクリックすると、それらのデータポイントの違いを比較できます。

4

2 に答える 2

49

問題は、それらをレンダリングしないことです。レンダリング部分をキャンバスまたは webgl に切り替えることができます。canvasX3DOMを D3 データ バインディングで使用する例をいくつか見つけることができます。ただし、DOM オブジェクトの数によっては遅くなるため、この平行座標の例のように、それらを分離しておくことをお勧めします。この例では、すべてのデータ要素をロードしてレンダリングするプログレッシブ レンダリングも特徴です。

それらをメモリに保持し、クライアント側で操作することも問題ではありません。D3 は、"100 万以上のレコード" の迅速なデータ操作のためにクロスフィルターと共によく使用されます。

10^5 のデータ ポイントは、SVG インタラクティブ レンダリングには少し多すぎます。しかし、ビジュアライゼーション内のデータ ポイントが多すぎるということは、多くの場合、抽象化のレベルが間違っているか、プロット戦略が間違っていることを示しています。多くのポイントが重なり合ったり、視覚的に融合したりする可能性があります。では、ヒートマップ (重なり合うポイント数のカラー スケール)、ビニング (hexbin、ヒストグラム)、またはデータセットの要約などを使用して、これらの形状を集約してみませんか?

概要とデータセットの比較が必要な場合は、データセットを要約する統計などの抽象化が必要になる可能性があり、オンデマンドで詳細を確認できます (セマンティック ズーム、フォーカス + コンテキスト、ドリルダウン)。

于 2013-08-15T13:12:18.327 に答える