StatisticDefinition
require(["esri/tasks/support/StatisticDefinition"], function(StatisticDefinition) { /* code goes here */ });
esri/tasks/support/StatisticDefinition
This class defines the parameters for querying a layer or layer view for statistics.
- See also:
// query for the sum of the population in all features
var sumPopulation = {
onStatisticField: "POP_2015", // service field for 2015 population
outStatisticFieldName: "Pop_2015_sum",
statisticType: "sum"
}
var query = layer.createQuery();
query.outStatistics = [ sumPopulation ];
layer.queryFeatures(query)
.then(function(response){
var stats = response.features[0].attributes;
console.log("output stats": stats);
});
// query for the average of the population change for all features
var populationChangeDefinition = {
onStatisticField: "POP_2015 - POP_2010", // service field for 2015 population
outStatisticFieldName: "avg_pop_change_2015_2010",
statisticType: "avg"
}
var query = layer.createQuery();
query.outStatistics = [ populationChangeDefinition ];
layer.queryFeatures(query)
.then(function(response){
var stats = response.features[0].attributes;
console.log("Average change": stats.avg_pop_change_2015_2010);
});
Constructors
- new StatisticDefinition(properties)
- Parameter:properties Objectoptional
See the properties for a list of all the properties that may be passed into the constructor.
Property Overview
Name | Type | Summary | Class | |
---|---|---|---|---|
String | The name of the class. more details | more details | Accessor | |
String | Defines the field for which statistics will be calculated. more details | more details | StatisticDefinition | |
String | Specifies the output field name for the requested statistic. more details | more details | StatisticDefinition | |
String | Defines the type of statistic. more details | more details | StatisticDefinition |
Property Details
- Since: ArcGIS API for JavaScript 4.7
The name of the class. The declared class name is formatted as
esri.folder.className
.
- onStatisticFieldString
Defines the field for which statistics will be calculated. This can be service field names or SQL expressions. See the snippets below for examples.
Examples:// query for the sum of the population in all features var sumPopulation = { onStatisticField: "POP_2015", // service field for 2015 population outStatisticFieldName: "Pop_2015_sum", statisticType: "sum" } var query = layer.createQuery(); query.outStatistics = [ sumPopulation ]; layer.queryFeatures(query) .then(function(response){ var stats = response.features[0].attributes; console.log("output stats": stats); });
// query for the average of the population change for all features // Notice that you can pass a SQL expression as a field name to calculate statistics var populationChangeDefinition = { onStatisticField: "POP_2015 - POP_2010", // service field for 2015 population outStatisticFieldName: "avg_pop_change_2015_2010", statisticType: "avg" } var query = layer.createQuery(); query.outStatistics = [ populationChangeDefinition ]; layer.queryFeatures(query) .then(function(response){ var stats = response.features[0].attributes; console.log("Average change": stats.avg_pop_change_2015_2010); });
- outStatisticFieldNameString
Specifies the output field name for the requested statistic. Output field names can only contain alpha-numeric characters and an underscore. If no output field name is specified, the server assigns a field name to the returned statistic field.
- statisticTypeString
Defines the type of statistic.
Possible Values: count | sum | min | max | avg | stddev | var
Method Overview
Name | Return Type | Summary | Class | |
---|---|---|---|---|
* | Creates a new instance of this class and initializes it with values from a JSON object generated from a product in the ArcGIS platform. more details | more details | StatisticDefinition | |
Object | Converts an instance of this class to its ArcGIS portal JSON representation. more details | more details | StatisticDefinition |
Method Details
- fromJSON(json){*}static
Creates a new instance of this class and initializes it with values from a JSON object generated from a product in the ArcGIS platform. The object passed into the input
json
parameter often comes from a response to a query operation in the REST API or a toJSON() method from another ArcGIS product. See the Using fromJSON() topic in the Guide for details and examples of when and how to use this function.Parameter:json ObjectA JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects.
Returns:Type Description * Returns a new instance of this class.
- toJSON(){Object}
Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() topic in the Guide for more information.
Returns:Type Description Object The ArcGIS portal JSON representation of an instance of this class.