Display filters are queries that limit which features of a layer are displayed. Display filters can be determined by scale, or set manually. They differ from definition queries in that display filters impact the display only. The features filtered from the display by display filters are still available for query and analysis. Features filtered by definition queries are not available to the layer at all.
Use display filters when you want to draw a subset of features, but you want to retain access to all features. When a display filter is active, all features in the layer remain in the layer's attribute table and can be selected, identified, edited, and be available for geoprocessing operations. But, because only visible features are labeled, display filters affect the labeling of a layer. Display filters are available in 2D maps only. They are not available in 3D scenes.
Display filters exist independently of the way the layer is symbolized. This means that the queries that define a display filter can be built from any feature attributes, not just those that are used to specify the symbology of the features. For example, you can symbolize a roads line layer by road class using different symbols for streets, major roads, and highways. But then use display filter queries to show only roads that have a minimum traffic volume (regardless of road type) at smaller scales. This means that the display filters persist even if you change the way the layer is symbolized.
Enable display filters on a layer
You manage display filters from the Display filters tab in the Symbology pane of a layer. You must enable the display filters for them to be respected by the map display. Click the Enable display filters toggle button to turn it on. This activates existing display filters and allows you to author new display filters.
You can disable display filters at any time without losing their definitions. To temporarily suspend the display filters, click the Enable display filters toggle button to turn it off. The scale settings and queries remain intact, but layer drawing does not respect them until the toggle button is switched on again. This way, you can compare the display with and without the filters applied.
Two types of display filters
A layer can contain many display filters, but only one display filter is applied to the layer at any time. There are two ways to specify the currently active display filter:
- By scale—In this mode, each display filter on a layer is associated with a visible scale range. The scale ranges are mutually exclusive and continuous; there cannot be scale gaps or overlaps. The current scale of the map determines the active display filter. You typically use display filters defined by scale on a layer that has so much feature density at small scales that it is difficult to interpret or slow to draw. (See Author a multiscale map for more strategies on managing the display of data across scales.)
- Manually—In this mode, each display filter is mutually independent and defined by a query only. There are no associated scale ranges. You must manually specify which display filter is currently active (if more than one is present). You might switch between these display filters as a way to make visual comparisons of the data.
Scale-based display filters
Scale-based display filters are typically used on a layer that has so much feature density at small scales that it is difficult to interpret or slow to draw but you don't want to limit the amount of data available to the layer. For example, imagine you are working with a detailed dataset of hydrology in the United States, symbolized by flow volume. At small scales, there are too many features drawing to extract any meaningful information from the map visually:
You can add display filters (with queries that specify different flow rates to show at different scale ranges) to control the feature density at different scales without impacting the symbology or the underlying features. Even though fewer features are drawn now, they are still all available for query and analysis.
The following map shows only the rivers with the largest flow rates at the smallest scales, as defined by a display filter:
As you zoom in to larger scales, the query of the display filter allows smaller flow-rate rivers to draw as shown in the following map:
Until, at the largest scales, the display filters allow all features to draw, regardless of their flow rate attribution, as shown in the following map:
Add scale-based display filters to a layer
To establish display filters on a layer, follow these steps:
- Select a layer in the Contents pane.
- Under Feature Layer, on the Appearance tab, in the Drawing group, click Display Filters to open the Display Filters tab of the Symbology pane.
- Click the Enable display filters toggle button to turn it on and set the Set active display filter property to By scale.
- If display filters have not yet been established on the layer, one display filter named all features is present. Click New display filter to add as many additional display filters as necessary. Optionally double-click the names of display filters to rename them.
- Use the slider at the top row of the table to change the scale boundaries for each display filter. Drag the interim stops to a new scale location, or click them to open a pop-up to choose a different map scale to adjust the scale boundaries of each display filter.
Work with the scale ranges
Scale-based display filters are organized within the layer by scale range. They are mutually exclusive and continuous. The entire scale range of the layer is covered, the scale ranges of display filters cannot overlap, and there cannot be scale gaps between them. This means that when display filters are enabled, there is always one and only one display filter applied at each scale. To begin, a layer has a single display filter that covers the full extent of the scale range of the layer. You must add additional display filters to subdivide the scale range with different queries as necessary.
When specifying the scale ranges of display filters, you work only with the stops on the main slider. The subsliders below provide a visual understanding of the scale ranges of each symbol only. The scale stops on the slider are determined by, and limited to, the list of scales defined for the map. See Map scales and scale properties to learn how to customize the list of map scales and set up map scale aliases. There must always be at least one display filter. Add others to subdivide the scale range. Expand each display filter to specify the query. Optionally rename each display filter descriptively to organize your work.
When setting scale ranges, it is important to understand what happens at scale boundaries. Two versions of a feature should not draw simultaneously at scale boundaries. Ensure that the Draw up to and including the maximum scale in scale ranges map property is not checked. In the Contents pane, right-click a map and click Properties to open the Map Properties dialog box. Click the General tab to inspect this property. It is not checked by default on new maps, but it is checked for map documents imported from ArcGIS Desktop. This is especially important if you intend to create vector tiles from the map.
Add expressions to scale-based display filters
To add expressions to scale-based display filters, follow these steps:
- On the Display Filters tab in the Symbology pane, ensure that Enable display filters is switched on and the Set active display filter property is set to By scale.
- Click the Show query button next to the display filter name to expand the display filter to add an expression, or modify the expression if one already exists. If there is no expression present, click the New expression menu and click one of the following:
Create a new expression
Use the query builder to build the expression without writing SQL code. See Write a query in the query builder to learn more about building queries.
Create a new expression in SQL
Write SQL code to define the expression.
Add expression from file
Import an existing expression saved as a query expression file (.exp file extension).
- Click Apply to verify and apply the expression to the display filter.
Delete display filters from a layer
You can delete display filters one at a time, or you can delete all of the display filters associated with a layer at once. A layer must always have at least one display filter that, by default, covers the full scale range of the layer.
To delete one display filter, right-click the display filter name and click Delete .
To delete all display filters at once, click the Delete all filters button .
Manually specified display filters
Manually specified display filters differ from scale-based display queries in that they exist independently of one another. They have an expression query to define which features they filter, but they are not affected by the map scale. Instead, if there is more than one display filter on a layer, you must manually specify which one is active. Only one can be active at a time. Use manually specified display filters to make visual comparisons in your dataset under different conditions.
Add manually specified display filters to a layer
To establish manual display filters on a layer, follow these steps:
- Select a layer in the Contents pane.
- Under Feature Layer, on the Appearance tab, in the Drawing group, click Display Filters to open the Display Filters tab of the Symbology pane.
- Click the Enable display filters toggle button to turn it on and set the Set active display filter property to Manually.
- Click New display filter to add display filters as necessary.
For each display filter, a new query is created, with a default name and a single, unfinished clause.
- Choose values from the menus to construct the clause. These menus and their values are specific to the underlying source data.
- Optionally click Add Clause to add another clause to the display filter. Choose values from the menus in the new clause as required. Repeat this step to add more clauses as necessary.
- Optionally hover over the display filter name and click to rename it.
- Optionally click Verify the SQL expression is valid to verify the display filter.
- To verify and finalize the display filter, click Apply.
- If this is the only display filter on the layer, it becomes the active display filter, and is immediately applied. If there are other display filters on the layer, click Set as Active to manually specify which display filter is applied to the layer.
Delete display filters from a layer
To delete a manually specified display filter, click Cancel to remove the clause, then hover the cursor over the display filter name and click the Remove definition query button .
To delete all display filters at once, click Delete all filters at the top of the pane.
Share layers with display filters
When you share a map that contains a layer with display filters as a map image layer, as a tile layer, or as a vector tile layer, the display filters are included in it. When you add these layers to a web map, the display filters are respected. Alternatively, if you add the individual layer as a feature layer to a web map, the display filters are not available.