このArcGISプロセスをPostGISで複製しようとしています:http : //blogs.esri.com/esri/arcgis/2012/11/13/spaghetti_and_meatballs/。これは、バッファされたポイントをそれらの交差に基づいてポリゴンに分割し、レイヤーの数を数えて、それらをポリゴンに分類して分類する方法を説明しています。私はそれを使用して、ベクトルを使用して大まかなポイント密度マップを作成しました。結果は、ArcGISのデータセットにとって驚くほど素晴らしいものでした。しかし、私はPostGISで実行可能な何かを考え出すのに苦労しています。そこでは、Webマップ用の動的ポイント密度レイヤーを作成するためにそれが必要です。
ArcGISでは、バッファポイントレイヤーで交差ツールを実行して、必要な形状を作成しました。
PostGISでは、次のクエリを実行しました。
CREATE TABLE buffer_table AS
SELECT a.gid AS gid, ST_Buffer(a.geo,.003) AS geo
FROM public.pointTable a;
CREATE TABLE intersections AS
SELECT a.gid AS gid_a, b.gid AS gid_b, ST_Intersection(a.geo,b.geo) AS geo
FROM public.pointTable a, public.pointTable b
WHERE ST_Intersects(a.geo, b.geo) AND a.gid < b.gid;
DELETE FROM intersections WHERE id_a = id_b;
出力は、ArcGIS出力とほとんど同じですが、意味のある密度マップに必要な程度にポリゴンを分割しない点が異なります。ここに私が意味するもののスクリーンショットがあります:
ArcGISは左側にあり、PostGISは右側にあります。少しわかりづらいですが、ArcGIS画像は、3つのバッファーすべてが交差する場所に作成された「内部」ポリゴンを示しています。一方、PostGIS出力はその内部ポリゴンを作成せず、代わりにコンポーネントをそのまま保持します。これにより、外側のパーツが1つしかないのに比べて、3つのレイヤーが重なり合った内部エリアだけを分類することはできません。
誰かが私が必要とする範囲までポリゴンを分解するPostGIS関数を知っていますか?あるいは、PostGISでベクトルを使用して点密度マップを作成するより良い方法を誰かが知っていますか?