注:
目前,此功能仅在 Map Viewer 经典版(之前称为 Map Viewer)中受支持。
您可使用追加数据工具将要素追加到 ArcGIS Enterprise 组织中的现有托管图层。 可使用追加数据更新或修改现有数据集。
工作流示意图
使用 GeoAnalytics Tools 进行的分析
通过跨多个 ArcGIS GeoAnalytics Server 计算机和核心组件的分布式处理来运行使用 GeoAnalytics Tools 进行的分析。GeoAnalytics Tools 和 ArcGIS Enterprise 中标准要素分析工具的参数和功能不同。要了解有关这些差别的详细信息,请参阅要素分析工具差别。
示例
某大型连锁餐厅按月采集每家连锁店的销售记录。 为避免每个月都要维护每家连锁店的数据集,公司希望为每家连锁店使用年度销售图层。 借助追加数据工具,公司可以在每月月末新销售记录采集完成时,将该数据追加到主要数据集。
为更好地了解大西洋随时间变化的海底模式,正在开展生态海洋单位研究。 这些研究是利用各个环境组织过去从大西洋收集到的信息数据进行的。 由于各组织都会维护自身的数据集,因此可以使用追加数据工具将多个海底数据集追加到一个图层中。
使用 GeoAnalytics Tools 进行的分析
通过跨多个 ArcGIS GeoAnalytics Server 计算机和核心组件的分布式处理来运行使用 GeoAnalytics Tools 进行的分析。GeoAnalytics Tools 和 ArcGIS Enterprise 中标准要素分析工具的参数和功能不同。要了解有关这些差别的详细信息,请参阅要素分析工具差别。
用法说明
可以使用选择要追加到的图层下拉菜单来定义输入图层。 输入图层必须为托管点、线、面或表格要素图层。
可以使用选择要追加的图层下拉菜单来定义追加图层。 追加图层可以为点、线、面、或表格大数据文件共享数据集,以及要素图层。
因此需要输入图层和追加图层具有相同的几何类型。
如果在输入图层中启用时间,则这两个图层必须具有相同的时间类型。 要了解有关要素图层时间设置的详细信息,请参阅配置时间设置。 要了解有关大数据文件共享时间设置的详细信息,请参阅了解大数据文件共享清单中的时间部分。
或者,您可以通过单击查询按钮 使用追加所有要素或定义一个子集过滤器。 将仅追加符合条件的要素。 例如,如果您有一个名为 temperature 的字段,则可以通过选择条件 temperature is greater than 10 来追加温度值高于 10 的所有要素。
选定输入图层和追加图层后,选择追加字段的方式字段映射表随即出现。 系统会自动使用输入图层字段以及追加图层的匹配值进行填充。
默认情况下,当追加图层不包含匹配字段时,输入图层字段将追加 null 值。 或者,您可以使用选择追加字段的方式字段映射表来追加以下两种类型的自定义值:
- 追加字段- 将输入图层字段与名称不同但类型相同的追加图层字段进行匹配。
- 表达式 - 为追加要素计算输入图层字段值。 有关使用 Arcade 表达式和追加数据的详细信息,请参阅使用包含追加数据的 Arcade 表达式。
例如,人口迁徙研究人员想要追加具有输入图层的数据集,并追加如下所示的图层方案。 两个图层都包含类型为 text 且名为 Country 的相同字段,并且都包含两个具有相同数据类型但具有唯一名称的附加字段。 输入图层包含 Pop_ 和 Pop_Density 字段,追加图层包含 Population 和 area_km2 字段。 研究人员想要将 Country 字段匹配到 Country 字段,并将 Population 字段追加至 Pop_ 字段,然后计算 Pop_Density 字段的人口密度。
默认情况下,字段映射表将基于字段名称和字段类型与 Country 字段匹配。 Pop_ 和 Pop_Density 字段在追加图层中没有匹配值,并将追加 Null 值。
可以使用选择追加字段的方式字段映射表,以使输入图层 Pop_ 字段与追加图层 Population 字段匹配,方法为从追加值下 Pop_ 旁边的下拉列表中选择 Population 字段。 可以使用 Pop_Density 旁边下拉列表中的表达式选项计算追加要素的值,方法为使用追加图层字段 Population 和 area_km2 来构建 Arcade 表达式 $feature["Population"]/$feature["area_km2"]。
输入图层的字段永远不会被修改。 选择追加字段的方式字段映射表中任何不匹配的追加图层字段都将从已追加的结果中排除。
局限性
以下限制适用:
- 追加的要素必须与被追加的要素图层具有相同的几何类型。
- 被追加图层必须为托管服务器上的现有图层。 如果要追加到不同的图层,则必须首先创建该数据集的托管图层。 为此,请使用复制到数据存储工具,或将图层共享至您的门户。 要了解有关共享图层的详细信息,请参阅共享 Web 图层简介 共享 Web 图层简介。 当数据集成为托管图层后,即可运行追加数据工具来向其中追加要素。
- 选择追加字段的方式字段映射表不允许在输入图层中添加、删除或重命名字段。
ArcGIS API for Python 示例
可通过 ArcGIS API for Python 获取追加数据工具。
本示例可将大西洋地震的大数据文件共享追加到地震的要素图层。
# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS
from arcgis.geoanalytics import manage_data
# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password")
if not portal.geoanalytics.is_supported():
print("Quitting, GeoAnalytics is not supported")
exit(1)
# Find the big data file share dataset you'll use for analysis
search_result = portal.content.search("", "Big Data File Share")
# Look through the search results for a big data file share with the matching name
bdfs_search = next(x for x in search_result if x.title == "bigDataFileShares_NaturalDisaters")
# Look through the big data file share for Earthquakes_atlantic
eq_atlantic = next(x for x in bdfs_search.layers if x.properties.name == "Earthquakes_atlantic")
# Find a feature layer named "Earthquakes" in your ArcGIS Enterprise portal
earthquakes_search = portal.content.search("Earthquakes", "Feature Layer")
earthquakes_layer = earthquakes_search[0].layers[0]
# Set the tool environment settings
arcgis.env.process_spatial_reference = 32618
arcgis.env.verbose = False
append_data_result = manage_data.append_data(earthquakes_layer, eq_atlantic)
# Visualize the tool results if you are running Python in a Jupyter Notebook
processed_map = portal.map('World', 1)
processed_map.add_layer(append_data_result)
类似工具
可以使用 ArcGIS GeoAnalytics Server 追加数据工具将要素追加到托管服务器上的图层。 其他工具或许在解决略有差异的类似问题时十分有用。
Map Viewer 经典版 分析工具
可以使用 ArcGIS GeoAnalytics Server 复制到数据存储工具选择数据并将其复制到门户中的新要素图层。
可以使用 ArcGIS GeoAnalytics Server 计算字段工具在新字段或现有字段中计算要素的值。
ArcGIS Pro 分析工具
要从 ArcGIS Pro 运行此工具,您的活动门户必须为 Enterprise 10.6.1 或更高版本。您必须使用具有执行 GeoAnalytics 要素分析权限的帐户登录。
可以使用追加地理处理工具在 ArcGIS Pro 中执行类似的追加操作。