Mathematical Functions
Functions for performing mathematical operations.
Abs - Acos - Asin - Atan - Atan2 - Average - Ceil - Constrain - Cos - Exp - Floor - Log - Max - Mean - Min - Pow - Random - Round - Sin - Sqrt - Stdev - Sum - Tan - Variance
Abs
Abs( value ) -> Number
Returns the absolute value of a number. If the input is null
, then it returns 0.
Name | Type | Description |
---|---|---|
value | Number | A number on which to perform the operation. |
Returns: Number
Example
prints 3
Abs(-3)
Acos
Acos( value ) -> Number
Returns the arccosine of the input value in radians, in the range of zero to PI. If the input value is outside the appropriate range of +/- 1, then NaN is returned.
Name | Type | Description |
---|---|---|
value | Number | A number between -1 and 1 on which to perform the operation. |
Returns: Number
Example
prints 1.266104
Acos(0.3)
Asin
Asin( value ) -> Number
Returns the arcsine of the input value in radians, in the range of -PI/2 and PI/2. If the input value is outside the appropriate range of +/- 1, then NaN is returned.
Name | Type | Description |
---|---|---|
value | Number | A number between -1 and 1 on which to perform the operation. |
Returns: Number
Example
prints 0.304693
Asin(0.3)
Atan
Atan( value ) -> Number
Returns the arctangent of the input value in radians, in the range of -PI/2 and PI/2.
Name | Type | Description |
---|---|---|
value | Number | A number on which to perform the operation. |
Returns: Number
Example
prints 0.785398
Atan(1)
Atan2
Atan2( y, x ) -> Number
Returns the arctangent of the quotient of the input values in radians, in the range of -PI and zero or zero and PI depending on the sign of arguments.
Name | Type | Description |
---|---|---|
y | Number | A number representing the y-coordinate. |
x | Number | A number representing the x-coordinate. |
Returns: Number
Example
prints -2.356194
Atan2(-1, -1)
Average
Average( values, fieldName? ) -> Number
Returns the average of a set of numbers. In profiles that support accessing data, this function can return the average value of a given numeric field in a FeatureSet.
Name | Type | Description |
---|---|---|
values | Number[] | FeatureSet | A list or array of numbers on which to perform the operation. In profiles that support accessing data, this can be a FeatureSet. |
fieldName | Text | optional Specifies the name of a numeric field or SQL92 expression for which the statistic will be calculated from the input FeatureSet. This parameter only applies when a FeatureSet is specified. |
Returns: Number
Example
prints 5
var array = [0,5,10]
Average(array)
calculates the difference between the feature's population and the average population of all features in the layer
$feature.population - Average($layer, 'population')
calculates the average population per square mile of all features in the layer
Average($layer, 'population / area')
Ceil
Ceil( value, numPlaces? ) -> Number
Returns the input value rounded upwards to the given number of decimal places.
Name | Type | Description |
---|---|---|
value | Number | The number to round upward. |
numPlaces | Number | optional The number of decimal places to round the value to. Default is 0. Trailing zeros will be truncated. |
Returns: Number
Example
prints 2135.1
Ceil(2135.0905, 2)
Constrain
Constrain( value, min, max ) -> Number
Constrains the given input value
to minimum and maximum bounds. For example, if the input value is 10
, the lower bound is 50
, and the upper bound is 100
, then 50
is returned.
Name | Type | Description |
---|---|---|
value | Number | The value to constrain to the given min and max bounds. |
min | Number | The lower bound by which to constrain the input value . If the given value is less than the min , then min is returned. |
max | Number | The upper bound by which to constrain the input value . If the given value is greater than the max , then max is returned. |
Returns: Number
Example
returns 5
Constrain(5, 0, 10)
returns 0
Constrain(-3, 0, 10)
returns 10
Constrain(553, 0, 10)
Cos
Cos( value ) -> Number
Returns the cosine of the input value in radians.
Name | Type | Description |
---|---|---|
value | Number | A number in radians on which to perform the operation. |
Returns: Number
Example
prints 0.540302
Cos(1)
Exp
Exp( x ) -> Number
Returns the value of e to the power of x, where e is the base of the natural logarithm 2.718281828
.
Name | Type | Description |
---|---|---|
x | Number | The power, or number of times to multiply e to itself. |
Returns: Number
Example
prints 7.389056
Exp(2)
Floor
Floor( value, numPlaces? ) -> Number
Returns the input value rounded downward to the given number of decimal places.
Name | Type | Description |
---|---|---|
value | Number | A number to round downward. |
numPlaces | Number | optional The number of decimal places to round the number. Default is 0. Trailing zeros will be truncated. |
Returns: Number
Example
prints 2316.25
Floor(2316.2562, 2)
Log
Log( x ) -> Number
Returns the natural logarithm (base e) of x.
Name | Type | Description |
---|---|---|
x | Number | A number on which to perform the operation. |
Returns: Number
Example
prints 2.302585
Log(10)
Max
Max( values, fieldName? ) -> Number
Returns the highest value from an array of numbers. In profiles that support accessing data, this function can return the highest value for a given numeric field from a FeatureSet.
Name | Type | Description |
---|---|---|
values | Number[] | FeatureSet | An array or list of numbers. In profiles that support accessing data, this can be a FeatureSet. |
fieldName | Text | optional Specifies the name of a numeric field or SQL92 expression for which the statistic will be calculated from the input FeatureSet. This parameter only applies when a FeatureSet is specified. |
Returns: Number
Example
prints 89
Max([23,56,89])
prints 120
Max(23,5,120,43,9)
prints the max value of the population field for all features in the layer
Max($layer, 'population')
calculates the max population per square mile of all features in the layer
Max($layer, 'population / area')
Mean
Mean( values, fieldName? ) -> Number
Returns the mean value of an array of numbers. In profiles that support accessing data, this function can return the mean value of a given numeric field in a FeatureSet.
Name | Type | Description |
---|---|---|
values | Number[] | FeatureSet | A list or array of numbers from which to calculate the mean. In profiles that support accessing data, this can be a FeatureSet. |
fieldName | Text | optional Specifies the name of a numeric field or SQL92 expression for which the statistic will be calculated from the input FeatureSet. This parameter only applies when a FeatureSet is specified. |
Returns: Number
Example
Use a single array as input
returns 5
var vals = [1,2,3,4,5,6,7,8,9];
Mean(vals);
Use comma separated values with array element
returns 5
var array = [0,10];
Mean(0,10,5,array);
calculates the difference between the feature's population and the mean population of all features in the layer
$feature.population - Mean($layer, 'population')
calculates the mean population per square mile of all features in the layer
Mean($layer, 'population / area')
Min
Min( values, fieldName? ) -> Number
Returns the lowest value in a given array. In profiles that support accessing data, this function can return the lowest value for a given numeric field from a FeatureSet.
Name | Type | Description |
---|---|---|
values | Number[] | FeatureSet | An array or list of numbers. In profiles that support accessing data, this can be a FeatureSet. |
fieldName | Text | optional Specifies the name of a numeric field or SQL92 expression for which the statistic will be calculated from the input FeatureSet. This parameter only applies when a FeatureSet is specified. |
Returns: Number
Example
prints 23
Min([23,56,89])
prints 5
Min(23,5,120,43,9)
prints the min value of the population field for all features in the layer
Min($layer, 'population')
returns the minimum population per square mile of all features in the layer
Min($layer, 'population / area')
Pow
Pow( x, y ) -> Number
Returns the value of x to the power of y.
Name | Type | Description |
---|---|---|
x | Number | The base value. |
y | Number | The exponent. This indicates the number of times to multiply x by itself. |
Returns: Number
Example
prints 9
Pow(3, 2)
Random
Random( ) -> Number
Returns a random number between 0 and 1.
Name | Type | Description |
---|
Returns: Number
Example
Random()
Round
Round( value, numPlaces? ) -> Number
Returns the input value, rounded to the given number of decimal places.
Note: If you're looking to format a value for display in a label or popup, use the text function.
Name | Type | Description |
---|---|---|
value | Number | A number to round. |
numPlaces | Number | optional The number of decimal places to round the number to. Default is 0 . Trailing zeros will be truncated. |
Returns: Number
Example
prints 2316.26
Round(2316.2562, 2)
Sin
Sin( value ) -> Number
Returns the sine of the input value.
Name | Type | Description |
---|---|---|
value | Number | A number in radians on which to perform the operation. |
Returns: Number
Example
prints 0.841741
Sin(1)
Sqrt
Sqrt( value ) -> Number
Returns the square root of a number.
Name | Type | Description |
---|---|---|
value | Number | A number on which to calculate the square root. |
Returns: Number
Example
prints 3
Sqrt(9)
Stdev
Stdev( values, fieldName? ) -> Number
Returns the standard deviation (population standard deviation) of a set of numbers. In profiles that support accessing data, this function can return the standard deviation for the values from a given numeric field in a FeatureSet.
Name | Type | Description |
---|---|---|
values | Number[] | FeatureSet | An array or list of numbers on which to perform the operation. In profiles that support accessing data, this can be a FeatureSet. |
fieldName | Text | optional Specifies the name of a numeric field or SQL92 expression for which the statistic will be calculated from the input FeatureSet. This parameter only applies when a FeatureSet is specified. |
Returns: Number
Example
prints 27.5
Stdev(23,56,89,12,45,78)
prints the standard deviation of values from the 'population' field
Stdev($layer, 'population')
calculates the standard deviation of the population per square mile of all features in the layer
Stdev($layer, 'population / area')
Sum
Sum( values, fieldName? ) -> Number
Returns the sum of a set of numbers. In profiles that support accessing data, this function can return the sum of values returned from a given numeric field in a FeatureSet.
Name | Type | Description |
---|---|---|
values | Number[] | FeatureSet | An array of numbers on which to perform the operation. In profiles that support accessing data, this can be a FeatureSet. |
fieldName | Text | optional Specifies the name of a numeric field or SQL92 expression for which the statistic will be calculated from the input FeatureSet. This parameter only applies when a FeatureSet is specified. |
Returns: Number
Example
prints 303
Sum(23,56,89,12,45,78)
calculates the population of the current feature as a % of the total population of all features in the layer
( $feature.population / Sum($layer, 'population') ) * 100
calculates the total number of votes cast in an election for the entire dataset
Sum($layer, 'democrat + republican + other')
Tan
Tan( value ) -> Number
Returns the tangent of an angle in radians.
Name | Type | Description |
---|---|---|
value | Number | A number on which to calculate the tangent. |
Returns: Number
Example
prints 0.57389
Tan(0.521)
Variance
Variance( values, fieldName? ) -> Number
Returns the variance (population variance) of a set of numbers. In profiles that support accessing data, this function can return the variance of the values from a given numeric field in a FeatureSet.
Name | Type | Description |
---|---|---|
values | Number[] | FeatureSet | An array of numbers on which to perform the operation. In profiles that support accessing data, this can be a FeatureSet. |
fieldName | Text | optional Specifies the name of a numeric field or SQL92 expression for which the statistic will be calculated from the input FeatureSet. This parameter only applies when a FeatureSet is specified. |
Returns: Number
Example
prints 756.25
Variance(12,23,45,56,78,89)
prints the variance for the population field in the given layer
Variance($layer, 'population')
calculates the variance of the population per square mile of all features in the layer
Variance($layer, 'population / area')
Feedback on this topic?