require(["esri/smartMapping/heuristics/sizeRange"], (sizeRange) => { /* code goes here */ });
import sizeRange from "@arcgis/core/smartMapping/heuristics/sizeRange.js";
esri/smartMapping/heuristics/sizeRange
Function for determining the suggested minSize
and maxSize
of a
scale-dependent size visual variable.
Known Limitations
- This function is not intended for use in 3D SceneViews.
Method Overview
Name | Return Type | Summary | Function |
---|---|---|---|
Promise<SizeRangeResult> | Generates a suggested size range (i.e. | sizeRange |
Method Details
-
sizeRange
sizeRange(params){Promise<SizeRangeResult>}
-
Generates a suggested size range (i.e. the
minSize
andmaxSize
) of a scale-dependent size visual variable).Known Limitations
- This function is not intended for use in 3D SceneViews.
ParametersSpecificationparams ObjectSee the table below for details about parameters that may be passed to this function.
Specificationlayer FeatureLayer|SceneLayer|CSVLayer|OGCFeatureLayer|PointCloudLayer|GeoJSONLayer|WFSLayer|StreamLayer|OrientedImageryLayer|KnowledgeGraphSublayer|SubtypeGroupLayer|SubtypeSublayerThe layer for which to generate a suggested min/max size range based on scale for a size visual variable.
view MapViewThe MapView where the layer will be rendered.
filter FeatureFilteroptionalSince 4.31 When defined, only features included in the filter are considered in the attribute and spatial statistics calculations when determining the final renderer. This is useful when a lot of variation exists in the data that could result in undesired data ranges. A common use case would be to set a filter that only includes features in the current extent of the view where the data is most likely to be viewed. Currently, only geometry filters with an
intersects
spatial relationship are supported. All other filter types (includingwhere
) are ignored.forBinning BooleanoptionalIndicates whether the generated renderer is for a binning visualization.
signal AbortSignaloptionalAllows for cancelable requests. If canceled, the promise will be rejected with an error named
AbortError
. See also AbortController.ReturnsType Description Promise<SizeRangeResult> Resolves to an object containing the suggested minSize
andmaxSize
by scale for the layer's renderer.ExamplesizeRange({ layer: featureLayer, view: view }).then(function(response){ // update the minSize and maxSize of a size visual variable // on a layer's renderer to be scale-dependent const renderer = featureLayer.renderer.clone(); const sizeVariable = renderer.visualVariables.filter( vv => vv.type === "size")[0].clone(); sizeVariable.minSize = response.minSize; sizeVariable.maxSize = response.maxSize; renderer.visualVariables = [ sizeVariable ]; featureLayer.renderer = renderer; });
Type Definitions
-
The suggested
minSize
andmaxSize
size stops generated from the sizeRange() function to apply to the scale-dependent size visual variable.- Properties
-
minSize ScaleDependentStops
The suggested sizes of the smallest symbols at various scales in a layer with a size visualization.
maxSize ScaleDependentStopsThe suggested sizes of the largest symbols at various scales in a layer with a size visualization.