コロプレス表現のための小さなJS離散化ライブラリ


9

すぐに使用できる小さなstat / discretization jsライブラリが存在するかどうかを知りたいです。

jStatもう少し詳しく調べます)の存在を知っています。mapfishにコロプレスマップを作成するgeostatsモジュール/ウィジェットがあることは知っています。コードはこちらです。しかし、それはopenlayersに依存しているので、スタンドアロンのlibを用意して、最終的にはopenlayersと自由に通信できるようにしたいと考えています。

私はいくつかの基本的な方法を持ちたいと思います:

  • 最高
  • 平均
  • 中央値

クラスの数と精度(10進数)を指定する機能を使用して、次の離散化を実装できます。

  • 分位
  • 等間隔
  • ナチュラルブレイク(ジェンクス)

それがまだ存在しない場合、私はおそらく自分で何かをコーディングし、無料のライセンスの下でgithubにリリースするでしょう。リソースやアドバイスは大歓迎です。


1
これは似ています-code.google.com/p/pseudosavant/source/browse/trunk/mathStats/…jStatを使用しない理由はありますか?
geographika

確かに、あなたが言及したライブラリーは良い出発点であったかもしれません。なぜjstatではないのですか?離散化メソッドが見当たらないので、それを実際に優先的に探していました。統計メソッドはおまけの
simo

回答:


18

ええと、私は昨日何かをコーディングし、MITライセンスの下でリリースしました。

geostatsという名前のライブラリはgithubで入手できます。パッケージには例が含まれています。また、http://www.intermezzo-coop.eu/mapping/geostats/(具体的なコロプレス表現のサンプルを使用)で実際の動作を確認することもできます

上記の8つのメソッドをサポートします。

  • 分位
  • 等間隔
  • 標準偏差
  • 算数の進行
  • 幾何学的な進行
  • Natural Breaks(Jenks):Jenks分類コードはDoug Curlから取得されました。
  • ユニークな価値
  • ユーザー定義の分類

ライブラリには、凡例をHTML形式でレンダリングするメソッドも含まれています。使用可能なオプション(連続、不連続、個別のクラス)については、HTML凡例のサンプルを参照てください。

分位分類サンプル:

分位分類と凡例

一意の値の分類サンプル: ここに画像の説明を入力してください

(Marc Harterライブラリを使用して)シェープファイルから直接値を読み取るデモをご覧ください

jsconsoleを使用して、2つのステップで自分で試してみたい場合:

最初にコンソールにコピー/貼り付けしてください:

load("https://raw.github.com/simogeo/geostats/master/lib/geostats.js");

次に、コピー/貼り付けを行います:

var data = Array(12, 22, 5, 8, 43, 2, 34, 12, 34, 36, 5, 21, 23, 45, 12, 31, 38); 
serie = new geostats(data); 
serie.getEqInterval(4);
alert('Classification method : ' + serie.method + "\n\nClasses : " + serie.ranges.join(' | '));

バグを発見した場合はお知らせください。この場合も、ライブラリを強化するためのアイデアや提案は歓迎されます。

それで全部です!それもあなたに役立つことを願っています。


注意-jsconsoleリンクは実際にはスパマースクワットである「jconsole.com」を指しています。これを修正するために必要なカルマがありません。誰でもリンクを更新できますか?悪意のあるコードが含まれている可能性があります。
ThibautBarrère、2016

1

ザカリーフォレストジョンソンは、オープンレイヤーに関するテーマ別分析を提供するために本当に素晴らしい仕事をしました。

ライブラリはBSDライセンスの下にあり、githubで入手できます。プロジェクトとサンプルの詳細については、彼のブログをご覧ください



弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.