私が構築している Web アプリにデータのヒート マップを表示させたいクライアントがいます。
私はヒートマップをまったく扱ったことがなく、ヒートマップを生成するための優れたツールを誰かが知っているかどうか疑問に思っていました.
ありがとう。
ヒート マップは、より一般的な用語であるカーネル密度推定値の代わりによく使用されます。これらをオンザフライで計算する必要がある場合は、GRASS GIS、特にv.kernelまたはv.neighborsモジュールを検討してください。これらは、あるターゲット解像度 (現在の地域設定によって定義される) で、密度の連続推定値 (つまり、ラスター サーフェス) を生成します。GRASS GIS は Python コードで制御できるため、基礎となるモジュールの周りに Python ラッパーを記述して、結果を Web アプリケーションにエクスポートするのは簡単なことです。
小さなデータセットの場合、Rプロジェクトには、空間データの読み取り/書き込み、およびカーネル密度推定の計算のための関数がいくつかあります。
これはかなり古い投稿だと思いますが、次にこのページに出くわした人は、Web アプリケーションでヒートマップを試してみることになるかもしれません。Django と Google App Engine のポートがあります (これらのバックエンドを使用している場合)。
これは、データポイントごとに 3 つの値を持つデータであると仮定します。これらを x、y、z と呼びます。x と y が空間座標であると、作業が簡単になるため、非常に役立ちます。
とにかく、x x y のビットマップを生成します (適切にスケーリングされます)。
データ内の x と y のペアごとに、z を 0 から 1 (または 0 とマップ内の色の数) の間でスケーリングし、z をその値で表される色としてプロットします。たとえば、単純なマップでは RGB の R 部分のみを使用できます。この場合、赤のグラデーションは 256 になります。
おそらく、もっと派手なものが欲しいと思うでしょうが、アイデアを得ることができるはずです.
データポイントが離れて広がっている場合は、それらをスペースを取る長方形としてプロットするか、それらの間を滑らかに補間することができます。
注:ここでそれを行う Web ベースのツールがあります。ウィキペディアのヒートマップの記事からリンクされていることがわかりました。そこからあまりにもリンクされている Java もあります。
クライアント側で (JavaScript を使用して) ヒートマップを生成する場合は、heatmap.jsをお勧めします。HTML5 Canvas 要素を使用して動的な Web ヒートマップを生成します。いつでも新しいデータを追加して、ヒートマップを更新できます。
PC とモバイルの両方の Web ページに推奨する魅力的なヒートマップ ツールがあります: http://miapex.com
独自の jQuery プラグインを提案できますか?
jQuery Hottieを使用すると、通常のマークアップを簡単に取得して、次のように背景色を追加できます。
<!-- Coloring elements is easy! -->
<ul id="example1">
<li>1<li>
<li>2<li>
<li>3<li>
<li>4<li>
<li>5<li>
</ul>
$('ul#example1 li').hottie();