概要
フィーチャクラスのポイント位置から住所を生成します。リバース ジオコーディング処理により、指定した検索距離に基づいて、ポイント位置に最も近い住所または交差点を検索します。ArcGIS World Geocoding Service を使用している場合、この操作でクレジットが消費されることがあります。
使用法
入力フィーチャクラスは有効な X、Y 座標を持つポイント形状を含んでいる必要があります。NULL 座標のポイントには住所は返されません。
出力フィーチャクラスには入力フィーチャクラスと同数のレコードが含まれます。住所の検索結果を含むフィールドがフィーチャクラスに追加されます。フィールド名は「REV_」で始まります。住所が検索できなかった場合、フィールドは空の値になります。
入力フィーチャクラスの空間参照が住所ロケーターと異なる場合、住所ロケーターはリアルタイムに座標を変換して照合を試みます。出力フィーチャクラスは入力フィーチャクラスと同じ空間参照内に保存されます。出力フィーチャクラスの空間参照を変更するには、ツールの環境設定で異なる出力座標系を設定します。
入力フィーチャクラスのポイントに住所が返されない場合、入力されたポイントに関連付けられるフィーチャが住所ロケーター内に存在しないことを意味します。ポイントが照合されない一般的な原因は、次のとおりです。
- 検索距離が短すぎて、ポイントが最も近いフィーチャを見つけられない場合。
- ポイントが NULL 座標を含んでいる場合。
- ポイントの座標が不正で、住所ロケーターで使用される空間座標に変換できない場合。
- 住所ロケーターがポイントと関連付けられる参照フィーチャをエリア内に保持していない場合。
検索距離を長くすることで最も近い住所が見つかる可能性は高くなります。また、より多くのフィーチャを含む住所ロケーターまたはより広いエリアをカバーする住所ロケーターを代わりに使用して、入力されたポイントを照合できます。
ArcGIS World Geocoding Serviceを使用してフィーチャクラスをリバース ジオコーディングする場合、ArcGIS Online 組織向けプランサブスクリプションが必要です。詳細については、「ArcGIS Online の World Geocoding Service の操作」をご参照ください。
構文
arcpy.geocoding.ReverseGeocode(in_features, in_address_locator, out_feature_class, {address_type}, {search_distance}, {feature_type}, {location_type})
パラメーター | 説明 | データ タイプ |
in_features | フィーチャのポイント位置に基づいて住所を返すポイント フィーチャクラスまたはレイヤー。 | Feature Class |
in_address_locator | 入力フィーチャクラスをリバース ジオコーディングするために使用する住所ロケーター。 | Address Locator |
out_feature_class | 出力フィーチャクラス。 | Feature Class |
address_type (オプション) | 住所ロケーターが交差点の照合をサポートしている場合に、ポイントの住所を道路の住所として返すか、または交差点の住所として返すかを指定します。
| String |
search_distance (オプション) | ポイント位置に最も近い住所または交差点を検索するために使用される距離。一部のロケーターは、検索距離パラメーターのオーバーライドをサポートしない、最適化された距離値を使用します。[住所ロケーターの作成 (Create Address Locator)] ツールで作成された住所ロケーターのデフォルトの検索範囲は 100 メートルです。 | Linear Unit |
feature_type [feature_type,...] (オプション) | 返される一致候補のタイプを制限します。1 つまたは複数の値を選択できます。単一の値を選択した場合、入力フィーチャ タイプの検索許容値は 500 メートルです。複数の値が含まれる場合、フィーチャ タイプの階層テーブルで指定されているデフォルトの検索距離が適用されます。featureTypes の [reverseGeocode] パラメーターの詳細については、REST API Web ヘルプをご参照ください。 このパラメーターは、すべてのロケーターではサポートされていません。
| String |
location_type (オプション) | [locationType] パラメーターに対応したロケーターを対象とします。[PointAddress] の照合の望ましい出力ジオメトリを指定します。指定できるのは、道路脇 (ルート解析用)、屋根または土地区画中心 (住所表示用) のいずれかです。優先位置がデータに存在しない場合、代わりにデフォルトの位置が返されます。Addr_type=PointAddress のジオコード結果の場合、X および Y 属性値は道路に沿った住所の座標を記述し、DisplayX および DisplayY の値は屋上または建物の重心の座標を記述します。locationType の [reverseGeocode] パラメーターの詳細については、REST API Web ヘルプをご参照ください。 このパラメーターは、すべてのロケーターではサポートされていません。
| String |
コードのサンプル
ReverseGeocode (リバース ジオコード) の例 1 (Python ウィンドウ)
次の Python ウィンドウ スクリプトは、イミディエイト モードで ReverseGeocode 関数を使用する方法を示しています。
import arcpy
arcpy.env.workspace = "C:/ArcTutor/Geocoding/atlanta.gdb"
# Set local variables:
input_feature_class = "geocode_result"
address_locator = "C:/ArcTutor/Geocoding/Atlanta.loc"
result_feature_class = "customers_with_address"
arcpy.ReverseGeocode_geocoding(input_feature_class, address_locator,
result_feature_class, "ADDRESS", "100 Meters")
ReverseGeocode (リバース ジオコード) の例 2 (スタンドアロン スクリプト)
次の Python スクリプトは、スタンドアロン スクリプトで ReverseGeocode 関数を使用する方法を示しています。
# Description:
# Reverse Geocode customer point locations using the ArcGIS World Geocoding Service using SignInToPortal and
# Ready-To-Use-Services that returns multiple feature types and preferred location.
import arcpy
import os
arcpy.SignInToPortal_server("<Username>","<Password>", "https://geocode.arcgis.com/arcgis")
# Set workspace
arcpy.env.workspace = r"C:\arcgis\ArcTutor\Geocoding\atlanta.gdb"
# Set local variables
in_feature_class = "customers_ParcelBlk"
address_locator = "Ready-To-Use Services/Geocoding/ArcGIS World Geocoding Service.GeocodeServer"
out_feature_class = "customers_with_streets"
addr_type = "ADDRESS"
search_distance = "0 Meters"
feature_type = "STREET_ADDRESS;STREET_INTERSECTION"
location_type = "ROUTING_LOCATION"
# Perform Reverse Geocoding
arcpy.ReverseGeocode_geocoding(in_feature_class, address_locator, out_feature_class,
addr_type, search_distance, feature_type, location_type)
ReverseGeocode (リバース ジオコード) の例 3 (スタンドアロン スクリプト)
次の Python スクリプトは、スタンドアロン スクリプトで ReverseGeocode 関数を使用する方法を示しています。
# Description:
# Reverse Geocode customer point locations using the ArcGIS World Geocoding Service using an ArcGIS Server connection file
# that returns multiple feature types and preferred location.
# Import system modules import arcpy import os
# Set workspace arcpy.env.workspace = r"C:\arcgis\ArcTutor\Geocoding\atlanta.gdb"
# Set local variables in_feature_class = "customers_ParcelBlk"
# Create this ags connection file in ArcMap address_locator = r"C:/connection_files/arcgis on geocode.arcgis.com (user)/World.GeocodeServer"
out_feature_class = "customers_with_streets"
addr_type = "ADDRESS"
search_distance = "0 Meters"
feature_type = "STREET_ADDRESS;STREET_INTERSECTION"
location_type = "ROUTING_LOCATION"
# Perform Reverse Geocoding arcpy.ReverseGeocode_geocoding(in_feature_class, address_locator, out_feature_class, addr_type, search_distance, feature_type, location_type)
環境
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい