AggregationFeatureReduction

A base class to define visual aggregation of geoelements. Feature reduction dynamically aggregates groups of points that are within proximity of each other in order to represent each group with a single symbol. Such grouping allows you to see patterns in the data that are difficult to visualize when a layer contains hundreds or thousands of points that overlap and cover each other. The count of geoelements in each group can be displayed, and numeric attribute values can also be summarized within each group. Note, properties defined for AggregationFeatureReduction are independent of properties of FeatureLayer and GraphicsOverlay. FeatureReduction is not supported in 3D.

Since

200.2.0

Inheritors

Properties

Link copied to clipboard

An array of AggregateField that summarizes one or more attributes for a group of geoelements visualized with FeatureReduction. AggregationFeatureReduction.aggregateFields define the attributes of an AggregateGeoElement. Each AggregateField stores a value that is generated by aggregating values from a field referenced in the feature layer. These aggregate fields may be used in popups, labels, and renderers. Note that aggregated geoelements only have access to the AggregationFeatureReduction.aggregateFields defined. The fields from the feature layer are not accessible for use in popups, labels, or renderers for aggregated geoelements. For example, to display the sum of the population values in a cluster of features, you can create an aggregate field called 'sum_population' using the 'population' attribute of the FeatureLayer. You can then use the 'sum_population' attribute as a label for the AggregateGeoElement, but not the original 'population' attribute from the feature layer. See AggregateField for more info. Note: Updates to this collection cause data to be re-aggregated.

Link copied to clipboard

The collection of LabelDefinition objects that define label display for the summarized attribute values of aggregated geoelements. Label expressions can only refer to the fields defined in AggregationFeatureReduction.aggregateFields. Feature layer fields are not accessible to aggregated geoelements. AggregationFeatureReduction.labelDefinitions is independent of FeatureLayer.labelDefinitions and GraphicsOverlay.labelDefinitions. Labels on aggregated geoelements will only appear if there is at least one LabelDefinition defined.

Link copied to clipboard

The map scale at which aggregation is enabled. Geoelements are not aggregated when the map scale goes beyond the maximum scale. The default value is 0, which means aggregation is applied at all map scales. Note: changing this property causes data to be re-aggregated.

Link copied to clipboard

Defines the symbology for displaying aggregated geoelements. Only SimpleRenderer, UniqueValueRenderer, and ClassBreaksRenderer are currently supported for AggregationFeatureReduction.renderer. UniqueValueRenderer with multiple fields is not supported. If the renderer passed is not one of the supported renderer types listed above then original features from the FeatureLayer or original graphics from the GraphicsOverlay are drawn using FeatureLayer.renderer or GraphicsOverlay.renderer respectively. In the case of FeatureLayer, a LayerViewState that contains an error indicating the use of an unsupported renderer is bubbled up. Also, note that AggregationFeatureReduction.renderer is independent of FeatureLayer.renderer and GraphicsOverlay.renderer.

Link copied to clipboard

True to display labels for aggregated geoelements, false to turn them off. The default value is true.

Inherited properties

Link copied to clipboard

True to enable feature reduction, false to show individual geoelements. The default value is true. Changing this property from false to true may cause data to be re-calculated.

Link copied to clipboard
open override var isPopupEnabled: Boolean

A flag indicating whether the PopupDefinition defined on the PopupSource is enable / disable. Will return false if an error occurs.

Link copied to clipboard
open override var popupDefinition: PopupDefinition?

The pop-up definition. The PopupDefinition associated with the popup source. A null if an error occurs or if the popup source is not associated with a pop-up definition.