私はWeb GISの問題に取り組んでおり、最善の戦略を見つける必要があります。30,000セルの地図があり、アルバータ州のグリッドを形成しています。各セルのデータポイントのリストがあります-すべてのセルに約50のインジケータフィールドと値があります。たとえば、1つの値が人間の母集団である場合、各セルにはその細胞の人間の母集団の値があります。これらの値をセルの四角形またはブレンドされたヒートマップタイプの外観で視覚的に表示できるインタラクティブマップを作成したいと考えています。さらに、すべてのデータポイントで複合計算を行い、それらの計算を使用して追加のマップを作成できるようにしたいと考えています。計算を考慮すると、マップには約300,000の順列があります。それを締めくくるために、それはまた一時的です。16の異なるタイムスライスがあります。
これまでの私の戦略:
1)サーバー側で、実行時に動的にセル値を計算し、値をクライアントに送信します(すべての30,000)。これは、画面上の525px x 525pxの画像の3x3ピクセルの正方形ごとの値にほぼ相当します。
2)レイヤーが開いているクライアント側で、サイズ変更可能な1px pngを使用し、必要に応じてアルファ値を調整して、各セルのデータ値に対応する異なる色のグラデーションを表示します。地図がズームインまたはズームアウトすると、PNGのサイズが変更されます。理論的には、正方形としてマップのブランケットカバレッジを形成するように正確に配置されるか、ヒートマップアプローチを使用して、ブランケットカバレッジを形成するのに十分に重なり合うことになります。
質問:
これらのセル値をサーバー上で動的に計算してから、リアルタイムでOpenLayersインターフェースに送信するのは妥当ですか?サーバーが計算を実行できると確信していますが、OpenLayersは一度に30,000データポイントを合理的に地図上に表示できますか?ポイントデータを使用して包括的なカバレッジを作成できると期待するのは妥当ですか?私は、マップの100%のブランケットカバレッジを提供する30,000のシェイプを持つベクトルマップと同等のものを作成しようとしていると思いますが、ポイントデータを使用して簡略化しています。
私の心の代替戦略は次のとおりです。
a)サーバー上でリアルタイムでマップを生成し、ラスタライズされたレイヤーとしてクライアントに送信する
b)すべての順列を事前に生成し、それらをラスタライズされたマップとしてサーバーに保存する
何かご意見は?私のアプローチは道を外れ、間違った木を吠えていますか?より良い方法に関するアドバイスはありますか?
この問題についてのご意見をお待ちしております。あなたが興味を持っているなら、私はそれを手伝うために開発者と契約することを探しているかもしれません。
本当にありがとう!
ノア