您可以使用过滤器来显示地图中要素图层的焦点视图。 通过限制图层中要素的可见性,可显示对您比较重要的内容。 例如,您可在犯罪图层上应用过滤器,以便在地图上仅显示上个月内发生的纵火案。 通过根据犯罪类型和日期过滤犯罪图层,可以显示近期火灾的案发模式,从而帮助警察局阻止纵火企图的再次发生。
如果图层中包含日期字段,则可以按日期对其进行过滤。 例如,您可以显示在特定日期范围内发生地震的位置,或者动态显示相对于当前日期发生的事件。
注:
影像图层目前不支持 Map Viewer 中的过滤功能(之前作为单独的测试版安装,现在自动包含在门户中)。 您可以根据 Map Viewer 经典版(之前为 Map Viewer)中的镶嵌数据集来过滤影像图层。
过滤器表达式
过滤器将使用一个或多个过滤器表达式来确定在地图上显示的要素。 可以使用数据中的属性字段创建过滤器表达式或自定义在 ArcGIS Arcade 中写入的属性表达式。
每个表达式将包含一个字段名称、一个运算符以及一个值。 例如,您可以在一个包含城市犯罪事件数据(盗窃、纵火、袭击等)的图层中创建过滤器,以仅显示纵火事件,如下所示:
- 对于字段名称,选择主要类型。
- 对于运算符,选择 includes。
- 对于值,选择 Arson。
提示:
使用 includes 运算符,而非 is 运算符,可以提供数据中可用值的列表。 当您不确定准确值时,这会非常有用。 值列表适用于包含编码值的字段。
要进一步优化过滤器以仅显示最近一个月中报告的纵火事件,可以创建第二个表达式,如下所示:
- 对于字段名称,选择 Date。
- 对于运算符,选择 in the last。
- 对于值,选择 1 month。
如果过滤器具有多个表达式,则必须选择一个匹配选项以连接这些表达式。 在以上示例中,将选择匹配所有表达式选项。 这意味着在应用过滤器时,仅与所有过滤器表达式相匹配的要素(在本示例中,即最近一个月的纵火事件)才会显示在地图上。
其他过滤器可能需要至少匹配一个表达式选项。 例如,要在过滤出其他犯罪事件的同时在地图上显示纵火和盗窃事件,则可以创建一个过滤器表达式以显示纵火事件(如上所示),然后创建一个类似表达式以显示盗窃事件。 然后选择至少匹配一个表达式以显示与纵火或盗窃表达式相匹配的犯罪事件。
创建过滤器
在 Map Viewer 中创建过滤器涉及创建一个或多个过滤器表达式,并使用适当的匹配选项来确定将表达式应用于数据的方式。 如果需要更高级的匹配,还可以将过滤器表达式分组为集合。
设置过滤器时,在保存过滤器之前,与过滤器条件不匹配的要素将在地图上显示为灰色或处于灰显状态。 保存过滤器后,这些要素被隐藏。
要创建并应用过滤器,请执行以下步骤:
- 确认您是否已登录,如要保存所做更改,则需具有创建内容的权限。
- 在 Map Viewer 中,打开包含该图层的地图或直接添加该图层。
- 在内容(深色)工具栏上,单击过滤器 。
- 请按照以下步骤创建过滤器表达式:
- 在过滤器窗格中,单击添加表达式。
- 单击字段选择器,选择要用于表达式的字段,然后单击替换。
提示:
使用替换字段窗口中的搜索和排序选项以查找字段。
- 单击运算符选择器并选择一个运算符,例如 is、is not、includes、excludes 或 contains。
注:
如果您选择日期字段,则其他日期运算符将变为可用。 可以使用 in the last 和 not in the last 运算符,以应用动态日期过滤器来显示相对于当前日期发生的事件(例如,在最近五天内编辑的所有要素),而无需每天手动更新过滤器。 其他可用于日期过滤器的运算符包括 is on、is not on、is before、is after、is between 和 is not between。
- 在值输入框中,输入要用于表达式中的值。
输入框会有所不同,具体取决于字段类型和运算符。 例如,如果您已选择 includes 或 excludes 运算符,则需要从指定字段中的数据值列表中选择一个值。
如果您指定了日期字段,则根据所选运算符,可以在日历中指定单个日期(或两个日期)、手动输入一个或两个日期,或者指定以天、周或月为单位的时间范围。
- 可以选择向过滤器添加表达式:
- 单击添加表达式,然后针对每个新的过滤器表达式重复上述步骤。
提示:
要创建与已创建表达式类似的表达式,请单击表达式上的选项 ,然后单击复制。 进行所需更改以复制集合。
要删除表达式,请单击选项,然后单击删除表达式。
- 单击表达式结果下拉菜单,然后选择匹配选项。
匹配所有表达式将显示匹配所有过滤器表达式的要素和图像。 至少匹配一个表达式将显示匹配一个或多个表达式的要素。 有关这些选项的示例,请参阅过滤器表达式。
- 单击添加表达式,然后针对每个新的过滤器表达式重复上述步骤。
- 在过滤器窗格中,单击保存以进行保存并将过滤器应用于图层。
提示:
要移除过滤器,请单击移除 。
使用表达式集
要创建一个更加复杂的过滤器,您可以使用表达式集以分组多个表达式。 分组表达式的方式决定了您在地图上看到的内容。 例如,您可以使用表达式集以进一步优化上述犯罪事件过滤器。 要显示最近一个月报告的纵火事件和盗窃事件,同时过滤出匹配所有其他犯罪类型和时间段的事件,您可以通过分组每种事件类型的日期表达式来创建两个集合,然后选择相应选项,以过滤至少匹配其中一个表达式集的结果。
要使用表达式集来创建过滤器,请执行以下操作:
- 遵循以上“创建过滤器”部分中的前四个步骤。
- 在要分组到集合中的表达式中,单击选项 ,然后单击添加条件。
将创建一个包含现有表达式和一个新的空表达式的新集合。
- 为新表达式添加字段、运算符和值。
- 要将表达式添加到集合,请单击添加条件,然后针对每个表达式重复上述步骤。
- 单击集合的下拉菜单,然后选择匹配选项。
匹配所有条件将显示集合中满足所有条件的要素。 至少匹配一个条件将显示集合中至少满足一个条件的要素,例如主要类型为纵火或盗窃的事件。
- 或者,重复上述步骤以创建其他过滤器集。
提示:
要创建与已创建集合类似的集合,请单击集合上的选项,然后单击复制。 进行所需更改以复制集合。
要删除集合,请单击选项,然后单击删除集合。
- 在过滤器窗格中,单击保存以进行保存并将过滤器集应用于图层。