ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

创建地址定位器

  • 描述
  • 使用
  • 语法
  • 代码示例
  • 环境
  • 许可信息

描述

创建地址定位器。地址定位器可用于查找某个地址的位置、对地址表进行地理编码或获取某个位置点的地址。

旧版本:

定位器应存储于文件夹中,这样您就可以利用存储于地理数据库中的定位器所不支持的新功能,例如性能改善、多线程功能和建议支持。ArcGIS 10.4 是支持地理数据库中存储定位器的最后一个版本。

了解有关常见地理编码任务的详细信息

使用

  • 可在任何指定的文件夹中创建地址定位器。

  • 参考数据集的角色定义了其作为地址定位器的参考数据的角色。ArcGIS 中的地址定位器样式使用以下值来描述参考数据集的角色:

    • 主表 - 定义定位器的主参考数据集要素类(例如,街道中心线要素类)。此表是必须的。
    • 备用城市名称表 - 定义一个备用城市名称表,用来存储街道或点要素的备用名称。如果要包含一个可用于连接至主表的 JoinID,则需要此表。此表为可选表。
    • 备用名称表 - 定义一个备用街道名称表,用来存储街道或点要素的备用名称。如果要包含一个可用于连接至主表的 JoinID,则需要此表。此表为可选表。
    • 别名表 - 定义一个地名别名表,用来存储地名以及名称对应的实际地址。用户可以使用地名(如 Field Museum)或地址(如 1400 S Lakeshore Drive Chicago, IL 60605)来查找相应的位置。此表为可选表。
  • 自定义定位器样式或第三方提供的定位器样式可能会为参考数据要素类和表定义其他类型的角色。有关这些定位器为参考数据集所定义的角色的信息,请参阅相应的文档。

  • 不能使用此工具创建复合地址定位器。要创建复合地址定位器,请使用创建复合地址定位器工具。

语法

CreateAddressLocator(in_address_locator_style, in_reference_data, in_field_map, out_address_locator, {config_keyword}, {enable_suggestions})
参数说明数据类型
in_address_locator_style

构建新的地址定位器时所依据的地址定位器样式。

  • US Address-Dual Ranges - 当参考数据为包含街段两侧信息的门牌号范围的线要素类,并且您要搜索街道指定侧上的地址或街道交叉点时使用。
  • US Address-One Range - 当参考数据为包含每个路段的某一门牌号范围的线要素类,并且您要搜索地址(无需指定侧)或街道交叉点时使用。
  • US Address-Single House - 当参考数据为每个要素表示单个地址的点要素类或面要素类,并且您要搜索宗地、建筑物或地址点的确切地址时使用。
  • US Address-Single House Subaddress - 当参考数据为每个要素表示具有可选子地址元素的单个地址的点要素类或面要素类,并且您要搜索公寓单元、联排别墅、复式别墅或购物广场内的商店时使用。
  • US Address-Street Name - 当参考数据为线要素类,并且您要仅使用街道名称搜索地址时使用。无需地址范围信息。
  • US Address-City State - 当参考数据为点要素类或面要素类,并且您要搜索某个州的特定城市时使用。
  • US Address-ZIP 5 Digit - 当参考数据为每个要素表示邮编区域的质心或地理区域的点要素类或面要素类,并且您要搜索特定的邮政编码位置时使用。
  • General-Gazetteer - 当参考数据为每个要素表示任意唯一要素的点要素类或面要素类,并且您要搜索地名、地标、水表或任意唯一值时使用。
Address Locator Style
in_reference_data
[[Reference Data, {Role}],...]

地址定位器要使用的参考数据要素类和表及其角色。

  • 主表 - 定义定位器的主参考数据集要素类(例如,街道中心线要素类)。此表是必须的。
  • 备用城市名称表 - 定义一个备用城市名称表,用来存储街道或点要素的备用名称。如果要包含一个可用于连接至主表的 JoinID,则需要此表。此表为可选表。
  • 备用名称表 - 定义一个备用街道名称表,用来存储街道或点要素的备用名称。如果要包含一个可用于连接至主表的 JoinID,则需要此表。此表为可选表。
  • 别名表 - 定义一个地名别名表,用来存储地名以及名称对应的实际地址。用户可以使用地名(如 Field Museum)或地址(如 1400 S Lakeshore Drive Chicago, IL 60605)来查找相应的位置。此表为可选表。

自定义定位器样式或第三方提供的定位器样式可能会为参考数据集定义一组其他的角色。

注:

如果使用包含数百万个要素的参考数据创建地址定位器,则包含临时目录的驱动上的可用磁盘空间必须至少为数据大小的 3 到 4 倍,原因是在将定位器复制到输出位置之前,需将用于构建定位器的文件写入此位置。如果没有足够的磁盘空间,则在执行该工具的过程中一旦空间不足,工具就会执行失败。另外请记住,在创建非常大的定位器时,您的计算机应具备足够的 RAM,以处理占用较大内存的进程。同样建议您安装Background Geoprocessing(64 位)并在启用后台地理处理的情况下运行该工具。

Value Table
in_field_map

地址定位器样式所使用的参考数据字段与参考数据集中各字段之间的映射。此参数中的每个字段映射均采用如下格式:

# <locator field alias> <dataset field name> VISIBLE NONE
# This shows as an example:
reference_data_field_map = """
"'Feature ID' FeatureID VISIBLE NONE;'*From Left' L_F_ADD VISIBLE NONE;
'*To Left' L_T_ADD VISIBLE NONE;'*From Right' R_F_ADD VISIBLE NONE;
'*To Right' R_T_ADD VISIBLE NONE;'Prefix Direction' PREFIX VISIBLE NONE;
'Prefix Type' PRE_TYPE VISIBLE NONE;'*Street Name' NAME VISIBLE NONE;
'Suffix Type' TYPE VISIBLE NONE;'Suffix Direction' SUFFIX VISIBLE NONE"""

其中,<locator field alias> 是地址定位器使用的参考数据字段的别名,<dataset field name> 是参考数据集中字段的名称。名称旁带有星号 (*) 的字段是地址定位器样式必需的字段。

VISIBLE - 字段可见;NONE - 几何是原始值的副本。

如果不想将地址定位器样式所使用的可选参考数据字段映射到参考数据集中的字段,请使用“<None>”来代替字段名,以此指定不存在任何映射。

Field Info
out_address_locator

要创建的地址定位器。将定位器保存到文件夹中后,即可利用性能改进、多线程功能和建议支持。创建定位器后,可以在定位器设置中修改其他属性和选项。

Address Locator
config_keyword
(可选)

配置关键字,用来确定关系数据库管理系统 (RDBMS) 中表的存储参数,仅适用于企业级地理数据库和文件地理数据库。

String
enable_suggestions
(可选)

支持针对客户端应用程序中的用户输入生成逐字符的自动完成建议。此功能通过在获取建议的匹配前减少需要输入的字符数来改善交互式搜索体验。该想法是这样的:客户端应用程序提供的建议列表可通过用户输入的各字符进行更新,直到在列表中返回要查找的位置。

仅可使用 Esri 提供的定位器样式按照启用的建议构建定位器。仅当将此类定位器作为地理编码服务发布时才会显示建议功能。启用建议的定位器只能保存在文件夹中,不能保存在地理数据库中。

  • ENABLED —针对定位器启用建议。
  • DISABLED —针对定位器禁用建议。这是默认设置。
Boolean

代码示例

CreateAddressLocator 示例(独立脚本)

以下 Python 脚本演示了如何使用 CreateAddressLocator 函数。

# Create a street address locator using a street centerline feature class 
# in a file geodatabase as reference data.
# The new address locator will be created in a separate file folder.
# Import system modules
import arcpy
arcpy.env.workspace = "C:/ArcTutor/Geocoding/atlanta.gdb"
Atlanta_AddressLocator_OutputPath = "C:/ArcTutor/Geocoding/Atlanta"
arcpy.CreateAddressLocator_geocoding("US Address - Dual Ranges", "streets 'Primary Table'", "'Feature ID' OBJECTID VISIBLE NONE;'*From Left' L_F_ADD VISIBLE NONE;'*To Left' L_T_ADD VISIBLE NONE;'*From Right' R_F_ADD VISIBLE NONE;'*To Right' R_T_ADD VISIBLE NONE;'Prefix Direction' PREFIX VISIBLE NONE;'Prefix Type' PRE_TYPE VISIBLE NONE;'*Street Name' NAME VISIBLE NONE;'Suffix Type' TYPE VISIBLE NONE;'Suffix Direction' SUFFIX VISIBLE NONE;'Left City or Place' CITYL VISIBLE NONE;'Right City or Place' CITYR VISIBLE NONE;'Left ZIP Code' ZIPL VISIBLE NONE;'Right ZIP Code' ZIPR VISIBLE NONE;'Left State' STATE_ABBR VISIBLE NONE;'Right State' STATE_ABBR VISIBLE NONE", Atlanta_AddressLocator_OutputPath, "", "DISABLED")

环境

  • 当前工作空间
  • 输出配置关键字
  • 临时工作空间

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题

  • 创建地址定位器
  • 创建复合地址定位器
  • 创建复合地址定位器
  • 地理编码工具箱概述

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2019 Esri. | 隐私政策 | 法律声明