XY イベント レイヤの作成(Make XY Event Layer) (データ管理)
サマリ
ソース テーブル内に定義されている X 座標および Y 座標に基づいて、新しいポイント フィーチャ レイヤを作成します。ソース テーブルに Z 座標(標高値)が格納されている場合、そのフィールドもイベント レイヤの作成時に指定できます。このツールで作成されたレイヤは、一時的なものです。
使用法
-
このツールで作成される出力ポイント フィーチャ レイヤは一時的なものであり、セッションの終了後に削除されます。このイベント レイヤは、[フィーチャのコピー(Copy Features)]、[フィーチャ → ポイント(Feature to Point)]、または [フィーチャクラス → フィーチャクラス(Feature Class to Feature Class)] ツールを使用してディスク上のフィーチャクラスにエクスポートできます。
-
イベント レイヤは編集可能でないため、編集コントロールを使用して出力レイヤのポイントを対話形式で移動することはできません。これらのポイントを直接移動する方法として、入力テーブル内の X 座標属性と Y 座標属性を変更した後にイベント レイヤを再作成する方法や、イベント レイヤをディスク上のフィーチャクラスに保存した後にフィーチャクラスに対して編集を行う方法があります。
表形式のテキスト ファイルで使用される標準的な区切り記号は、拡張子が「.csv」または「.txt」のファイルではカンマ、拡張子が「.tab」のファイルではタブです。入力テーブルで標準以外の区切り記号が使用されている場合は、schema.ini ファイルを使用して、テーブルで使用されている正しい区切り記号を指定する必要があります。
-
入力テーブルに ObjectID フィールドが存在していない場合は、選択を行うことも、結果レイヤに結合を追加することもできません。区切りテキスト ファイルまたは OLE DS 接続からのテーブルの多くは、ObjectID フィールドがありません。
構文
パラメータ | 説明 | データ タイプ |
table |
作成するポイント フィーチャの場所を定義する X 座標および Y 座標を含むテーブル。 | Table View |
in_x_field |
X 座標を含む入力テーブル内のフィールド。 | Field |
in_y_field |
Y 座標を含む入力テーブル内のフィールド。 | Field |
out_layer |
出力ポイント イベント レイヤの名前。 | Feature Layer |
spatial_reference (オプション) |
上に定義されている X フィールドと Y フィールド内の座標の空間参照。これは出力イベント レイヤの空間参照になります。 | Spatial Reference |
in_z_field (オプション) |
Z 座標を含む入力テーブル内のフィールド。 | Field |
コードのサンプル
次の Python ウィンドウ スクリプトは、MakeXYEventLayer(XY イベント レイヤの作成)ツールを使用する方法を示しています。
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.MakeXYEventLayer_management("firestations.dbf", "POINT_X", "POINT_Y", "firestations_points","", "POINT_Z")
次のスタンドアロン Python ウィンドウのスクリプトは、MakeXYEventLayer(XY イベント レイヤの作成)ツールの使用方法を示しています。
# MakeXYLayer.py
# Description: Creates an XY layer and exports it to a layer file
# import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
try:
# Set the local variables
in_Table = "firestations.dbf"
x_coords = "POINT_X"
y_coords = "POINT_Y"
z_coords = "POINT_Z"
out_Layer = "firestations_layer"
saved_Layer = r"c:\output\firestations.lyr"
# Set the spatial reference
spRef = r"Coordinate Systems\Projected Coordinate Systems\Utm\Nad 1983\NAD 1983 UTM Zone 11N.prj"
# Make the XY event layer...
arcpy.MakeXYEventLayer_management(in_Table, x_coords, y_coords, out_Layer, spRef, z_coords)
# Print the total rows
print arcpy.GetCount_management(out_Layer)
# Save to a layer file
arcpy.SaveToLayerFile_management(out_Layer, saved_Layer)
except:
# If an error occurred print the message to the screen
print arcpy.GetMessages()