概要
起点フィーチャから終点フィーチャへの接続ラインを生成します。これは、スパイダー ダイアグラムと呼ばれることがよくあります。
図
使用法
起点フィーチャまたは終点フィーチャがラインまたはポリゴンである場合、リンクの生成にはフィーチャの重心が使用されます。
出力フィーチャには、次の属性フィールドが含まれます。
- ORIG_FID - 起点フィーチャの ObjectID フィールド。
- ORIG_X - 起点フィーチャ (または重心) の X 座標。
- ORIG_Y - 起点フィーチャ (または重心) の Y 座標。
- DEST_FID - 終点フィーチャの ObjectID フィールド。
- DEST_X - 終点フィーチャ (または重心) の X 座標。
- DEST_Y - 終点フィーチャ (または重心) の Y 座標。
- LINK_DIST - 出力リンクの長さ (指定した距離単位で計測)。
- GROUP_ID - 起点フィーチャおよび終点フィーチャがリンクされたペアの間で共有されるグループ フィールドの値。起点と終点の両方のグループ フィールドが指定されている場合にのみ、このフィールドが追加されます。
- COLOR_ID - 起点またはグループを最大でも 8 つの一意の色付きリンクにシンボル化するために使用される数値。値は 1 ~ 8 の乱数です。
- LINK_COUNT - 重複しているリンクの数。これは、重複しているリンクを集約する際に追加されます。
- 重複しているリンクを集約する際に指定される統計情報フィールドも、出力フィーチャクラスに追加されます。
起点フィーチャおよび終点フィーチャは、同じレイヤーまたはデータセットとして指定できます。起点と終点に同じデータが使用されると、長さが 0 のラインは Null ジオメトリ エラーになるため、同じオブジェクト ID を使用して起点から終点フィーチャにリンクが生成されることはありません。
このツールは、1 対 1 と 1 対多の両方のリレーションシップに使用できます。たとえば、自動車の窃盗を回収場所 (1 対 1) にリンクしたり、近接解析を行って中央本部の場所と複数の地域オフィスの場所の間の距離を把握 (1 対多) したりできます。
出力リンク レイヤーには、分析結果の視覚化に役立つ、次のチャートが含まれます。
- グループ フィールドを指定した場合、各グループ ID の数のバー チャート。
- 各起点 ID または各グループ ID のリンク長の合計のバー チャート (グループ フィールドを指定した場合)。これは、一部の起点またはグループから終点への総距離が長いかどうか、あるいは短いかどうかを確認するために役立ちます。
- 各起点 ID または各グループ ID の平均リンク長のバー チャート (グループ フィールドを指定した場合)。これは、起点フィーチャまたはグループと、それらからリンクされた終点の間の平均距離を確認するために役立ちます。
- 各起点 ID または各グループ ID のリンク長の分布の箱ひげ図 (グループ フィールドを指定した場合)。これは、起点またはグループのリンクから終点へのほとんどのリンクが短いかどうか、あるいは長いかどうか、およびそれらのリンク長の分布の範囲とサマリーを確認するために役立ちます。起点 ID またはグループ ID が垂直方向に短い箱を持つ場合は、その起点またはグループから、リンクされたすべての終点への距離が類似していたことを意味します。起点 ID またはグループ ID が Y 軸の大きい位置に箱を持つ場合、ほとんどが長いリンクです。
構文
GenerateOriginDestinationLinks(origin_features, destination_features, out_feature_class, {origin_group_field}, {destination_group_field}, {line_type}, {num_nearest}, {search_distance}, distance_unit, {aggregate_links}, {sum_fields})
パラメーター | 説明 | データ タイプ |
origin_features | リンクの生成元となる入力フィーチャ。 | Feature Layer |
destination_features | リンクの生成先となる終点フィーチャ。 | Feature Layer |
out_feature_class | 出力リンクを含む出力ポリライン フィーチャクラス。 | Feature Class |
origin_group_field (オプション) | グループ化に使用する入力起点フィーチャの属性フィールド。起点と終点の間で同じグループ フィールド値を持つフィーチャは、リンクで接続されます。 | Field |
destination_group_field (オプション) | グループ化に使用する入力終点フィーチャの属性フィールド。起点と終点の間で同じグループ フィールド値を持つフィーチャは、リンクで接続されます。 | Field |
line_type (オプション) | 出力リンクを生成する際に、楕円体 (測地線) または直交投影地球 (平面) のどちらで最短パスを使用するかを指定します。測地線は、その長さが約 50 キロメートルを超える場合、緩いカーブを持ちます。これは、2D マップ上に表示される場合、地球の曲率によって、2 つのポイント間の最短距離が曲がっているように見えるためです。 データが、距離の計測に適さない座標系 (Web メルカトル、任意の地理座標系など) で格納されている場合や、データセットが広い地理範囲にまたがる場合、[測地線] ライン タイプを使用することをお勧めします。
| String |
num_nearest (オプション) | 1 つの起点フィーチャから最寄りの終点フィーチャに対して生成されるリンクの最大数。数値を指定しない場合、ツールはすべての起点フィーチャと終点フィーチャの間のリンクを生成します。 たとえば、1 という値を使用すると、各起点フィーチャとその最も近くにある 1 つの終点フィーチャの間のリンクが生成されます。 | Double |
search_distance (オプション) | 出力にリンク フィーチャを生成する起点フィーチャと終点フィーチャの間の最長距離。検索距離の単位は、[距離単位] パラメーターで指定されます。検索距離を指定しない場合、ツールは、起点フィーチャと終点フィーチャの間の距離に関係なく、すべての起点フィーチャと終点フィーチャの間のリンクを生成します。 | Double |
distance_unit | リンクの長さの計測に使用する単位を指定します。各リンクの距離は LINK_DIST フィールドに表示されます。距離単位を指定しないと、起点フィーチャの座標系の距離単位が使用されます。
| String |
aggregate_links (オプション) | 重複リンクが集約されるかどうかを指定します。
| Boolean |
sum_fields [sum_fields,...] (オプション) | 複数のリンクが重複する場合に集計される属性値を含む、終点フィーチャの数値フィールドを指定します。複数の統計情報とフィールドの組み合わせを指定できます。すべての統計情報計算から NULL 値が除外されます。 使用できる統計情報タイプは次のとおりです。
| Value Table |
コードのサンプル
Python ウィンドウで GenerateOriginDestinationLinks 関数を使用する方法を、以下に示します。
import arcpy
arcpy.env.workspace = "C:/data/input/genODLinks.gdb"
arcpy.GenerateOriginDestinationLinks_analysis(
"Station_100", "City_FireResponses", "Station_100_OD_Links")
次の Python スクリプトは、スタンドアロン スクリプトで GenerateOriginDestinationLinks 関数を使用する方法を示しています。
# Name: GenerateODLinks.py
# Description: Finds 10 nearest links within 25 miles from the origin fire
# stations to the destination response points.
# import system modules
import arcpy
# set workspace environment
arcpy.env.workspace = "C:/data/input/genODLinks.gdb"
# set required parameters
origin_features = "Station_100"
destination_features = "City_FireResponses"
out_feature_class = "Station_100_OD_Links"
# optional parameters
origin_group_field = 'STA_NUM'
destination_group_field = 'District'
line_type = 'PLANAR'
num_nearest = 10
search_distance = 25
distance_unit = 'MILES'
aggregate_links='AGGREGATE_OVERLAPPING'
sum_fields = 'TimeSpentOnCall SUM'
# make links between fire stations and call response points
arcpy.GenerateOriginDestinationLinks_analysis(
origin_features, destination_features, out_feature_class,
origin_group_field, destination_group_field, line_type, num_nearest,
search_distance, distance_unit, aggregate_links, sum_fields)
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい