WeeklyAlteryxTips#95 ポリゴンが重なった部分のポリゴンを作成する

Alteryx

本ブログシリーズは、毎週AlteryxのTipsをお伝えしていく週刊AlteryxTipsブログです。

今回はGISの話題です。GISに慣れている方はご存知の内容だと思いますがご容赦ください。

ポリゴンの重なった部分とは?

2つのポリゴン(多角形)があったときに、重なっている部分の面積を求めたいような場合、重なっている部分の計上を作成することで面積を求めることができます。

このタスクを行うには、いくつかの方法があります。

  1. 空間プロセスツールを使う
  2. 空間マッチツールを使う

1.空間プロセスツールを使う方法

空間プロセスツールは、2つのポリゴンの重なった状態に対して新たなポリゴンを作成するツールです。基本的にこの2つのポリゴンは異なるフィールドとして保持しておく必要があります。

設定は以下のようにします。

「交差オブジェクトを作成する」オプションをセットすれば、重なった部分を取り出すことができます。

2.空間マッチツールを使う方法

空間マッチツールでも重なった部分を取り出すことができます。

空間マッチツールの場合、2つのポリゴンは異なるデータストリームで入力する必要があります。つまり以下のように入力します。

設定のポイントは、「交差オブジェクトを出力」オプションです。もちろん、設定としては「ターゲットとユニバースの交差地点」のオプションを使う必要があります。「交差」の場合のみ、この「交差オブジェクトを出力」オプションを使うことができます。

どのように使い分けますか?

空間プロセスツールは、あらかじめ交差することがわかっているもの同士のポリゴン加工に有効です。一方で、空間マッチツールは、たくさんあるもの同士どれが交差するのかわからない、といった場合に効率よく交差するものを特定することができます。

GISではデータが大量にあり、データサイズもかなり膨大である傾向のため、使用するツールの選択を間違えると処理に大幅に時間がかかるケースがあるので、ツールの選択はなるべく慣れておきましょう。

例えば、1万件の店舗があり、店舗から500mを商圏として設定し、重なっている店舗を特定するような場合、空間プロセスツールで重なっているかどうか判定しようとすると、事前にフィールド付加ツールで1億件のレコードを作成する必要があります。これはかなりのデータ量になります(10分たっても終わらないです・・・)。一方で、空間プロセスツールの場合は、ツールに接続するデータは1万件のレコードを2つ入力するだけであとはDesignerにお任せでさくっと結果が出てきます(20秒かからないくらいです)。

ちなみに、1000件でやると、空間マッチツールは0.9秒、空間プロセスツールは2.6秒。3000件で、空間マッチツールは2.1秒に対して、空間プロセスツールは27.6秒。全然処理速度が違いますので、お気をつけください・・・。なお、どれとどれが重なっているのかわかっている場合は、空間プロセスツールのほうが高速に結果が得られます(3000件で1.1秒)。

実際に3000件で実行した場合のデータ量を見ていただければわかりやすいと思います。

まとめ

  • 交差した部分のポリゴンの作成の方法2つをご紹介しました
  • レコード数が多くてマッチしているものが不明の場合は「空間マッチツール」が適していることをご紹介しました。
  • 一方で、マッチしているものがわかっており、単なるポリゴンの加工だけであれば「空間プロセスツール」の方が高速です。

サンプルワークフローダウンロード

次回

次回はレンダリング系ツールネタです。

コメント

タイトルとURLをコピーしました