Skip to content

Data.Range

Computes min/max/baseline values from shaped scalar range inputs

DaxLib.SVG.Data.Range( dataMin, dataMax, includeZero )
Parameter Type Required Description
dataMin NUMERIC VAL Minimum value from source data
dataMax NUMERIC VAL Maximum value from source data
includeZero BOOLEAN Use zero baseline when range is fully positive. Defaults to FALSE

TABLE Single-row table with @Min, @Max, and @Baseline

DaxLib.SVG.Data.Range( 3.2, 97.8, TRUE )
// Returns single-row table:
//   @Min = 3.2
//   @Max = 97.8
//   @Baseline = 0     (zero because includeZero = TRUE and min > 0)

DaxLib.SVG.Data.Range( -10, 50, FALSE )
// Returns single-row table:
//   @Min = -10
//   @Max = 50
//   @Baseline = -10   (baseline equals min when includeZero = FALSE)
function 'DaxLib.SVG.Data.Range' =
        (
            dataMin: NUMERIC VAL,
            dataMax: NUMERIC VAL,
            includeZero: BOOLEAN
        ) =>

            VAR _IncludeZero = IF( ISBLANK( includeZero ), FALSE(), includeZero )
            VAR _Min = dataMin
            VAR _Max = dataMax
            VAR _Baseline = IF( _IncludeZero && _Min > 0, 0, _Min )

            RETURN
                ROW(
                    "@Min", _Min,
                    "@Max", _Max,
                    "@Baseline", _Baseline
                )