histogram
require(["esri/renderers/smartMapping/statistics/histogram"], function(histogram) { /* code goes here */ });esri/renderers/smartMapping/statistics/histogramGenerates a histogram based on data in a Layer for a given field. The returned object can be used for displaying a histogram in the UI within visualization authoring applications and analytical apps that query and display statistics.
Known Limitations
- Only FeatureLayer, SceneLayer, CSVLayer, and PointCloudLayer layer types are currently supported, except in the following scenarios:- SceneLayers without the supportsRendererandsupportsLayerQuerycapabilities enabled, unless a predefined statistics object is passed to thestatisticsparameter of the method in conjunction with the layer. To check a SceneLayer's capabilities, use the getFieldInfoUsage() method.
 
- SceneLayers without the 
- You cannot generate statistics using SQL expressions for client-side FeatureLayers in a SceneView.
Method Overview
| Name | Return Type | Summary | Function | |
|---|---|---|---|---|
| Promise<HistogramResult> | Generates a histogram for data returned from a  | more details | histogram | 
Method Details
- histogram(params){Promise<HistogramResult>}
- Generates a histogram for data returned from a - fieldin a given- layer. The returned object can be used for displaying a histogram to the UI in visualization authoring applications and analytical apps that query and display statistics.Parameters:params Object- See the table below for details on parameters that may be passed to this function. Specification:- The layer for which to generate a histogram. field Stringoptional- The name of the numeric field for which the histogram will be generated. This property is ignored if a - valueExpressionis used.normalizationField Stringoptional- The field by which to normalize the values returned from the given - field.classificationMethod Stringoptional- The method for classifying the data. See the table below for a list of possible values. - Possible Value - Description - natural-breaks - Data values that cluster are placed into a single class. Class breaks occur where gaps exist between clusters. You should use this method if your data is unevenly distributed; that is, many features have the same or similar values and there are gaps between groups of values. - equal-interval - Each class has an equal range of values; in other words, the difference between the high and low value is equal for each class. You should use this method if your data is evenly distributed and you want to emphasize the difference in values between the features. - quantile - Each class has roughly the same number of features. If your data is evenly distributed and you want to emphasize the difference in relative position between features, you should use the quantile classification method. If, for example, the point values are divided into five classes, points in the highest class would fall into the top fifth of all points. - standard-deviation - Class breaks are placed above and below the mean value at intervals of - 1,- 0.5, or- 0.25standard deviations until all the data values are included in a class.standardDeviationInterval Numberoptional- When - classificationMethod = "standard-deviation", this sets the interval at which each class break should be set (e.g.- 0.25,- 0.33,- 0.5,- 1).minValue Numberoptional- The minimum bounding value for the histogram. Use this in conjunction with - maxValueto generate a histogram between custom lower and upper bounds.maxValue Numberoptional- The maximum bounding value for the histogram. Use this in conjunction with - minValueto generate a histogram between custom lower and upper bounds.numBins NumberoptionalDefault Value: 10- Indicates the number of classes to generate for the histogram. valueExpression Stringoptional- An Arcade expression that returns a number. This expression can reference field values using the - $featureglobal variable. This property overrides the- fieldproperty and therefore is used instead of an input- fieldvalue.sqlExpression Stringoptional- A SQL expression evaluating to a number. sqlWhere Stringoptional- A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. view Viewoptional- A SceneView or MapView instance is required when a - valueExpressionis specified.features Graphic[]optional- A subset of features for which to generate the histogram. Returns:- Type - Description - Promise<HistogramResult> - Resolves to an instance of HistogramResult. Example:- histogram({ layer: featureLayer, valueExpression: "( ($feature.POP2020 - $feature.POP2010) / $feature.POP2010 ) * 100" view: mapView, numBins: 30 }).then(function(histogramResult){ colorSlider.histogram = histogramResult; });
Type Definitions
- HistogramResult
- The result returned from the histogram() method.