操作方法
在 ArcGIS Online 中,可以使用 Arcade 表达式使用其他要素图层中的属性值来填充图层中的字段。 此方法可用于增强数据完整性以及实现跨图层同步分析。
在本文中,将使用名为 Cities 和 ClimateData 的两个要素图层。 Cities 要素图层包含名为 CityAddress 和 ClimateLocationID 的两个字段。 ClimateData 要素图层另外包含名为 ClimateAddress 和 LocationID 的两个字段。 当 CityAddress 字段值与 ClimateAddress 字段值相匹配时,将在 ClimateLocationID 字段中自动填充 LocationID 值。
下图显示了 Cities 和 ClimateData 要素图层的属性表。


var <variable1> = FeatureSetByPortalItem(Portal('https://www.arcgis.com'), '<Item_ID>', <layer_index), ['*'], false);
var <variable2> = $feature['<field_name1>'];
for (var<variable3> in <variable1> ) {
var <variable4> = climateFeature['<field_name2>'];
if <variable2> == <variable4>) {
return <varibale3>['<field_name3>'];
}
}
null
以下是 Arcade 表达式的完整工作代码。
var climateDataLayer = FeatureSetByPortalItem(Portal('https://www.arcgis.com'), 'fd3161f30d6f47aba8b58f6fcb5ed488', 0, ['*'], false);
var cityAddress = $feature['CityAddress'];
for (var climateFeature in climateDataLayer) {
var climateAddress = climateFeature['ClimateAddress'];
if (cityAddress == climateAddress) {
return climateFeature['LocationID'];
}
}
null

当 CityAddress 字段值与 ClimateAddress 相匹配时,以下属性表显示了 Cities 要素图层的 ClimateLocationID 字段,该字段填充了 ClimateData 要素图层的 LocationID 字段中的值。

文章 ID: 000031934
获取来自 ArcGIS 专家的帮助
立即开始聊天