摘要: ArcGIS Arcade 是一种简单轻量级的表达式语言,可在整个 ArcGIS 平台中使用。这意味着它不仅适用于ArcGIS Online (AGOL)。相反,也可以在ArcGIS Pro、JavaScript API甚至 Collector 中使用。在这里...
ArcGIS Arcade 是一种简单轻量级的表达式语言,可在整个 ArcGIS 平台中使用。这意味着它不仅适用于ArcGIS Online (AGOL)。相反,也可以在ArcGIS Pro、JavaScript API甚至 Collector 中使用。在这里,将介绍ArcGIS Arcade,并概述在 ArcGIS 平台中使用的原因,还将通过一些具体示例和用例概述它如何帮助完成工作。
为什么要使用 ArcGIS Arcade?
可能会问的第一个问题是-当 Python 可用时,为什么还要使用 ArcGIS Arcade?Python 是已经取得巨大增长的GIS 编程语言之一,所以不能只用 Python 来做吗?
首先,Arcade 永远不会取代 Python,不能用它编写长脚本。相反,它更像是 Excel中的表达式生成器。设置一个函数或逻辑语句,它根据表达式输出一个值。
但 ArcGIS Arcade 之所以存在,是因为它的便利性。例如,可以在 web 地图中“即时”计算值、查询要素、更改符号系统或标签,甚至可以使用 ArcGIS Arcade 自定义弹出窗口。
ArcGIS Arcade 用例和示例
可通过多种方式在 ArcGIS 平台中使用 ArcGIS Arcade,主要优点是可以返回类似于 Excel 的值,因此不必在数据中创建新字段。但也有其他用途,以下是如何将 Arcade 用作表达式构建器的三个示例。
1.更改符号系统
假设想要标准化一个值。由于 Arcade 表达式生成器,不必在原始数据中创建全新的字段。相反,可以创建一个新表达式并使用它来动态显示数据。首先,必须使用 Arcade 表达式生成器,选择将两个字段相加,可以除以另一个字段来规范数据。最后,为表达式命名并使用它来驱动 web 地图中的符号系统。
($feature.VALUE1 + $feature.VALUE2) / $feature.POPULATION
Expression = NormalizedValue
2.创建标签
同样,如果想在地图上显示自定义标签,不必在数据中创建全新的字段并使用字段计算器。相反,可以创建一个新的 Arcade 表达式并重复使用之前创建的任何 Arcade 表达式。例如,通过舍入小数位来格式化任何值。最后,可以显示来自这个新 Arcade 表达式的自定义标签。
Round(($feature.VALUE1 + $feature.VALUE2) /$feature.POPULATION), 2)
Expression = RoundedValue
3.自定义弹出窗口
通过使用 Arcade,还可以使用构建的任何表达式配置弹出窗口。例如,甚至可以添加图表、更改图表中条形的颜色,可以对图表上的值进行排序。此外,构建的任何表达式都可以在地图上的弹出窗口中即时显示。
ArcGIS Arcade 的便利性
归根结底,ArcGIS Arcade 就是为了方便构建表达式。在 ArcGIS Arcade 存在之前,必须创建一个新字段,使用值填充该字段。因使用 ArcGIS Arcade,所以现在可以在 web 地图本身内“即时”执行此操作,而无需在原始数据中创建任何新字段。Arcade 不仅便于符号系统,还可以用于自定义标签和弹出窗口。