Skip To ContentArcGIS for DevelopersSign In Dashboard
require(["esri/renderers/smartMapping/symbology/type"], function(typeSchemes) { /* code goes here */ });
Object: esri/renderers/smartMapping/symbology/type
Since: ArcGIS API for JavaScript 4.4

Object containing helper methods for getting optimal symbol themes used to create data-driven visualizations of unique values or types. The getSchemes() method is used to generate symbol properties best suited to the given basemap.

Method Overview

NameReturn TypeSummaryObject
TypeScheme

Clones a type scheme object.

more details
more detailstype
TypeScheme

Returns a type scheme with the provided name.

more details
more detailstype
TypeSchemes

Returns a primary scheme and secondary schemes defining symbol properties for type-based data-driven visualizations in a Layer.

more details
more detailstype
TypeScheme[]

Returns an array of type schemes with the provided tags.

more details
more detailstype
Theme[]

Returns metadata for the available themes.

more details
more detailstype

Method Details

cloneScheme(scheme){TypeScheme}

Clones a type scheme object.

Parameter:
scheme TypeScheme

The type scheme object to clone.

Returns:
TypeDescription
TypeSchemeReturns a clone of the given type scheme object.
Example:
// clones the primary scheme returned from the getSchemes() method
var typeScheme = primaryScheme.clone();
getSchemeByName(params){TypeScheme}
Since: ArcGIS API for JavaScript 4.12

Returns a type scheme with the provided name.

Parameters:
Specification:
params Object

See the table below for details of each parameter that may be passed to this function.

Specification:
name String

The name of the scheme to retrieve.

basemap String|Basemap
optional

The basemap to pair with the visualization. This value indicates the best symbol color for visualizing features with the given basemap.

basemapTheme String
optional

If you have a non-Esri basemap (e.g. a VectorTileLayer basemap with a custom style) or no basemap at all, use this parameter to indicate whether the background of the visualization is light or dark.

Possible Values: light | dark

geometryType String

The geometry type of the features to visualize.

Possible Values: point | multipoint | polyline | polygon | mesh

theme String
optional
Default Value: default

Determines whether to return a standardized unique value scheme for point cloud class renderers (i.e. when the CLASS_CODE field is driving the visualization in a PointCloudLayer), or to return the other default primary schemes used in other unique value renderers generated for non-point cloud layer types.

Possible Values: point-cloud-class | default

worldScale Boolean
optional

Indicates if the size units of the scheme will be in meters. This should be true when the scheme is intended for 3D volumetric symbology. A view must be provided if this property is set to true.

optional

The SceneView instance in which the scheme will be used. This property is only applicable when the scheme will be used in conjunction with 3D symbols.

Returns:
TypeDescription
TypeSchemeReturns the type scheme with the given name.
Example:
// Returns the Pastel Dreams scheme
var galaxyBerriesScheme = typeSchemes.getSchemeByName({
  basemap: map.basemap,
  geometryType: featureLayer.geometryType,
  name: "Pastel Dreams"
});
getSchemes(params){TypeSchemes}

Returns a primary scheme and secondary schemes defining symbol properties for type-based data-driven visualizations in a Layer. The basemap parameter determines the color of the graphics used to visualize each feature. The geometryType determines which type of symbol to return.

Parameters:
Specification:
params Object

See the table below for details of each parameter that may be passed to this function.

Specification:
basemap String|Basemap
optional

The Esri basemap to pair with the visualization. This value indicates the best symbol colors for visualizing features against the given basemap. If you have a non-Esri basemap (e.g. a VectorTileLayer basemap with a custom style) or no basemap at all, then use the basemapTheme parameter instead of this parameter.

basemapTheme String
optional

If you have a non-Esri basemap (e.g. a VectorTileLayer basemap with a custom style) or no basemap at all, use this parameter to indicate whether the background of the visualization is light or dark.

Possible Values: light | dark

geometryType String

The geometry type of the features to visualize.

Possible Values: point | multipoint | polyline | polygon | mesh

theme String
optional
Default Value: default

Determines whether to return a standardized unique value scheme for point cloud class renderers (i.e. when the CLASS_CODE field is driving the visualization in a PointCloudLayer), or to return the other default primary schemes used in other unique value renderers generated for non-point cloud layer types.

Possible Values: point-cloud-class | default

worldScale Boolean
optional

Indicates if the size units of the scheme will be in meters. This should be true when the scheme is intended for 3D volumetric symbology. A view must be provided if this property is set to true.

optional

The SceneView instance in which the scheme will be used. This property is only applicable when the scheme will be used in conjunction with 3D symbols.

Returns:
TypeDescription
TypeSchemesReturns an object containing the optimal type scheme to use for the given basemap; it also contains secondary schemes.
Example:
// gets the primary scheme for the features of the given geometry type and basemap
var schemes = typeSchemes.getSchemes({
  basemap: map.basemap,
  geometryType: featureLayer.geometryType
});

// the best default scheme for the layer and basemap
var primaryScheme = schemes.primaryScheme;
getSchemesByTag(params){TypeScheme[]}
Since: ArcGIS API for JavaScript 4.12

Returns an array of type schemes with the provided tags. These schemes define symbol properties for data-driven visualizations in any layer that can be rendered with a UniqueValueRenderer.

Parameters:
Specification:
params Object

See the table below for details of each parameter that may be passed to this function.

Specification:
includedTags String[]
optional

When provided, only schemes containing all the matching tags will be returned.

Known Tags: light | dark | reds | yellows | oranges | greens | blues | purples | pinks | browns | grays | bright | subdued | deuteranopia | protanopia | tritanopia | grayscale | types | dot-density

excludedTags String[]
optional

When provided, only schemes missing all the provided tags will be returned.

Known Tags: light | dark | reds | yellows | oranges | greens | blues | purples | pinks | browns | grays | bright | subdued | deuteranopia | protanopia | tritanopia | grayscale | types | dot-density

basemap String|Basemap
optional

The basemap to pair with the visualization. This value indicates the best symbol color for visualizing features with the given basemap.

basemapTheme String
optional

If you have a non-Esri basemap (e.g. a VectorTileLayer basemap with a custom style) or no basemap at all, use this parameter to indicate whether the background of the visualization is light or dark.

Possible Values: light | dark

geometryType String

The geometry type of the features to visualize.

Possible Values: point | multipoint | polyline | polygon | mesh

theme String
optional
Default Value: default

Determines whether to return a standardized unique value scheme for point cloud class renderers (i.e. when the CLASS_CODE field is driving the visualization in a PointCloudLayer), or to return the other default primary schemes used in other unique value renderers generated for non-point cloud layer types.

Possible Values: point-cloud-class | default

worldScale Boolean
optional

Indicates if the size units of the scheme will be in meters. This should be true when the scheme is intended for 3D volumetric symbology. A view must be provided if this property is set to true.

optional

The SceneView instance in which the scheme will be used. This property is only applicable when the scheme will be used in conjunction with 3D symbols.

Returns:
TypeDescription
TypeScheme[]Returns an array of type schemes either including or excluding the provided tags.
Example:
// Returns all the red type schemes that are subdued
var schemes = typeSchemes.getSchemesByTag({
  basemap: map.basemap,
  geometryType: featureLayer.geometryType,
  includedTags: [ "types", "subdued" ]
});
getThemes(basemap){Theme[]}

Returns metadata for the available themes. If a basemap is provided, returns themes that work best with the given basemap.

Parameter:
basemap String|Basemap
optional

The Esri basemap string or object that will be used with the returned theme(s).

Returns:
TypeDescription
Theme[]Returns an object containing information about the available themes for the given basemap.

Type Definitions

Properties defining the symbology scheme used to visualize features with attribute data-driven types.

TypeSchemeForMesh

Properties defining the symbology scheme used to visualize mesh features driven by type-based attribute data.

Properties:
name String

The unique name of the scheme.

Tags associated with the scheme.

colors Color[]

The fill colors of the symbols comprising the theme.

noDataColor Color

The color of the fill symbol used to indicate features with no data.

opacity Number

The opacity of the symbol (0 - 1).

TypeSchemeForPoint

Properties defining the symbology scheme used to visualize point features driven by type-based attribute data.

Properties:
name String

The unique name of the scheme.

Tags associated with the scheme.

colors Color[]

The fill colors of the point symbols comprising the theme.

noDataColor Color

The color of the point symbol used to indicate features with no data.

outline Object

Properties for defining the outline of the marker symbol.

Specification:
color Color

The outline color of the marker symbol.

width Number

The width of the marker symbol in pixels or points.

size Number

The default size of the point symbol in pixels, points, or real-world units.

opacity Number

The opacity of the point symbol.

TypeSchemeForPolygon

Properties defining the symbology scheme used to visualize polygon features driven by type-based attribute data.

Properties:
name String

The unique name of the scheme.

Tags associated with the scheme.

colors Color[]

The fill colors of the symbols comprising the theme.

noDataColor Color

The color of the fill symbol used to indicate features with no data.

outline Object

Properties for defining the outline of the fill symbol.

Specification:
color Color

The outline color of the fill symbol.

width Number

The width of the fill symbol's outline in pixels or points.

opacity Number

The opacity of the symbol (0 - 1).

TypeSchemeForPolyline

Properties defining the symbology scheme used to visualize polyline features driven by type-based attribute data.

Properties:
name String

The unique name of the scheme.

Tags associated with the scheme.

colors Color[]

The colors of the line symbols comprising the theme.

noDataColor Color

The color of the line symbol used to indicate features with no data and features that are out of range.

width Number

The default width of the line symbol in pixels or points.

opacity Number

The opacity of the line symbol (0 - 1).

TypeSchemes

The return object of the getSchemes() method.

Properties:
primaryScheme TypeScheme

The type scheme best suited for the given basemap and geometry type.

secondarySchemes TypeScheme[]

Additional type schemes that may be used to visualize data of the given geometry type overlaid on the given basemap.

basemapId String

The ID of the basemap associated with the given schemes.

basemapTheme String

Indicates whether the average basemap color is light or dark.

API Reference search results

NameTypeModule
Loading...