A class breaks renderer symbolizes based on the value of some numeric attribute. The classBreakInfo define the values at which the symbology changes.

If the Normalization Type property is defined than the class breaks contain a normalized min/max value instead of the actual value. The data value, obtained from the field property, is normalized using one of the following functions before it is compared with the class breaks.

  1. Field - Divide the data value using the attribute value of the field specified by the normalizationField property.
  2. Log - Compute the base 10 logarithm of the data value. This can be a useful approach for some data distributions because it reduced the influence of very large data values.
  3. Percent-of-total - Divide the data value by the sum of all data values then multiply by 100. Use the normalizationTotal property to determine the total value.

See https://developers.arcgis.com/web-map-specification/objects/classBreaks_renderer/ https://developers.arcgis.com/web-scene-specification/objects/classBreaksRenderer/.

interface ClassBreaksRendererJson {
    authoringInfo?: AuthoringInfoJson;
    backgroundFillSymbol?: SimpleFillSymbolJson | PolygonSymbol3DJson;
    classBreakInfos: ClassBreakInfoJson[];
    classificationMethod: ClassificationMethodJsonType;
    defaultLabel?: string;
    defaultSymbol?: SymbolJson;
    field: string;
    minValue?: number;
    normalizationField?: string;
    normalizationTotal?: number;
    normalizationType?: "esriNormalizeByField" | "esriNormalizeByLog" | "esriNormalizeByPercentOfTotal";
    rotationExpression?: string;
    rotationType?: RotationJsonType;
    type: "classBreaks";
    visualVariables?: VisualVariableJson[];
}

Hierarchy (view full)

Properties

authoringInfo?: AuthoringInfoJson

An object containing metadata about the authoring process for creating a renderer object. This allows the authoring clients to save specific overridable settings so that next time it is accessed via the UI, their selections are remembered. Non-authoring clients should ignore it.

backgroundFillSymbol?: SimpleFillSymbolJson | PolygonSymbol3DJson

Supported only for polygon features. It is a SimpleFillSymbol.

classBreakInfos: ClassBreakInfoJson[]

Array of objects with value, label, and description.

classificationMethod: ClassificationMethodJsonType

Determines the classification method that was used to generate class breaks.

defaultLabel?: string

Default string for the default symbol used to draw unspecified values.

defaultSymbol?: SymbolJson

Symbol used when a value cannot be classified.

field: string

String value specifying the numeric field used in generating the class breaks.

minValue?: number

The minimum numeric data value needed to begin class breaks.

normalizationField?: string

Used when normalizationType is NormalizationType.BY_FIELD.

normalizationTotal?: number

Used when normalizationType is NormalizationType.BY_FIELD.

normalizationType?: "esriNormalizeByField" | "esriNormalizeByLog" | "esriNormalizeByPercentOfTotal"

One of the NormalizationType constants.

rotationExpression?: string

A constant value or an expression that derives the angle of rotation based on a feature attribute value. When an attribute name is specified, it's enclosed in square brackets.

rotationType?: RotationJsonType

String value (either geographic or arithmetic) which controls the origin and direction of rotation on point features. If the rotationType is defined as 'arithmetic', the symbol is rotated from East in a counter-clockwise direction where East is the 0� axis. If the rotationType is defined as 'geographic', the symbol is rotated from North in a clockwise direction where North is the 0� axis.

type

The type of renderer. See RendererJsonType.

visualVariables?: VisualVariableJson[]

An array of visualVariable objects used for continuous color or size, simple, and unique values with feature opacity.