layers

Specifies options for VectorMap widget layers.

Type: Array|Object
Default Value: undefined
Cannot be used in themes.

The vector map may contain several different layers. Each layer can be of "area", "line" or "marker" type.

The Z-order of layers depends on their order in the layers array in the following way: the first layer occupies the background, the last layer is brought to the foreground.

View Demo

Show Example:
jQuery

In this example, areas are painted using the 'Vintage' palette. To specify different colors from this palette for the areas, the customize function returns an object that contains the specified palleteIndex field.


                                    

                                    

borderColor

Specifies a color for the border of the layer elements.

Type: String
Default Value: '#9d9d9d'

This option does not apply if the layer type is "line".

This option supports the following colors.

Show Example:
jQuery

In this example, area borders are colored in 'indianred' using the borderColor option.


                                    

                                    

borderWidth

Specifies the line width (for layers of a line type) or width of the layer elements border in pixels.

Type: Number
Default Value: 1

Show Example:
jQuery

In this example, the area borders are increased in width up to 3 pixels using the borderWidth option.


                                    

                                    

color

Specifies a color for layer elements.

Type: String
Default Value: '#d2d2d2'

This option supports the following colors.

Show Example:
jQuery

In this example, the top ten most populated countries are indicated by the 'yellowgreen' color.


                                    

                                    

colorGroupingField

Specifies the field that provides data to be used for coloring of layer elements.

Type: String
Default Value: undefined

If you need for the color of a specific map area to depend on the value of one of its attributes, assign the name of this attribute to the colorGroupingField option. The attribute must contain numeric values. After that, specify groups into which attribute values must be classified. For this purpose, assign an array to the colorGroups option. Each group in this array will be assigned a color from the palette.

colorGroups

Allows you to paint layer elements with similar attributes in the same color.

Type: Array
Default Value: undefined

If you have specified the field that provides area-coloring data, you need to specify groups into which this data must be classified. For this purpose, assign an array of numbers to the colorGroups option. Each pair of numbers in this array defines a range of data values.

For example, imagine that the colorGroups array contains four items: [0, 1, 2, 3]. This array specifies three ranges, or groups: 0-1, 1-2 and 2-3. Thus, data values will be split up into three groups. Each group will be assigned a color from the palette in order to paint the corresponding areas. Areas of those data values that do not match neither group will be drawn in a default color.

View Demo

customize

Specifies the function that customizes each layer element individually.

Type: function(elements)
Function parameters:
elements: Array

The array of layer elements.

Cannot be used in themes.

When implementing a function for this option, use the fields of the Layer Element object. To access this object, use the function's parameter or the this object.

Only the following options can be changed in the customize function.

View Demo

Show Example:
jQuery

In this example, the top ten most populated countries are colored in 'dodgerblue' using the color option of the object returned by the customize function. The other countries are colored in 'powderblue' using the color option of the layer.


                                    

                                    

data

Deprecated

Use the dataSource option instead.

Specifies a data source for the layer.

Cannot be used in themes.

To discover different approaches to providing data for map areas, see the Data for Areas article.

dataField

Specifies the name of the attribute containing marker data. Setting this option makes sense only if the layer type is "marker" and the elementType is "bubble", "pie" or "image".

Type: String
Default Value: undefined

The marker data may contain a bubble value, pie chart values or an image URL.

Show Example:
jQuery

In this example, several markers are displayed on the map. These markers indicate the capitals of ten most populous states in the USA. The state names are stored in the attribures of each marker object. The name of the attribute is passed to the dataField option.


                                    

                                    

dataSource

Specifies a data source for the layer.

Cannot be used in themes.
Show Example:
jQuery

Use the drop-down menu below to choose which data source to use for the map. In this example, each data source is represented by a JSON object.


                                    

                                    

elementType

Specifies the type of a marker element. Setting this option makes sense only if the layer type is "marker".

Type: String
Accepted Values: 'dot' | 'bubble' | 'pie' | 'image'
Cannot be used in themes.

When using the widget as an ASP.NET MVC Control, specify this option using the VectorMapMarkerType enum. This enum accepts the following values: Dot, Bubble, Pie and Image.

View Image Markers Demo View Bubble Markers Demo View Pie Markers Demo

Show Example:
jQuery

In this example, you can spot the difference between marker types. Change the type of markers using the drop-down menu below the map. Note that to provide data for markers of a bubble and pie type, the value and values fields must be specified in the attributes of each marker.


                                    

                                    

hoveredBorderColor

Specifies a color for the border of the layer element when it is hovered over.

Type: String
Default Value: '#303030'

This option does not apply if the layer type is "line".

This option supports the following colors.

NOTE
Make sure that the hoverEnabled option is set to true, so that the hoveredBorderColor option takes effect.
Show Example:
jQuery

In this example, when an area is hovered over, its border is colored in 'lightcoral'.


                                    

                                    

hoveredBorderWidth

Specifies the pixel-measured line width (for layers of a line type) or width for the border of the layer element when it is hovered over.

Type: Number
Default Value: 1

Show Example:
jQuery

In this example, when an area is hovered over, its border has a 4-pixel width.


                                    

                                    

hoveredColor

Specifies a color for a layer element when it is hovered over.

Type: String
Default Value: '#d2d2d2'

This option supports the following colors.

NOTE
Make sure that the hoverEnabled option is set to true, so that the hoveredColor option takes effect.
Show Example:
jQuery

In this example, when an area is hovered over, it is colored in 'plum'.


                                    

                                    

hoverEnabled

Specifies whether or not to change the appearance of a layer element when it is hovered over.

Type: Boolean
Default Value: true

If this option is set to true, you can specify colors for the hovered layer element and its border using the hoveredColor and hoveredBorderColor options, respectively.

Show Example:
jQuery

Toggle the check box below to enable/disable the hovering capability.


                                    

                                    

label

Specifies marker label options.

Type: Object

A marker label is a text that accompanies a map marker. Usually, a marker label displays the name of a certain geographical point.

To specify a text to be used in a marker label, place it in a field of the marker object. After that, assign the name of this field to the label | dataField option. Finally, enable marker labels by assigning true to the label | enabled option.

Show Example:
jQuery

In this example, markers are accompanied by labels. Texts for these labels are provided by the text field of objects in the markers array. In addition, font options of marker labels are changed.


                                    

                                    

maxSize

Specifies the pixel-measured diameter of the marker that represents the biggest value. Setting this option makes sense only if the layer type is "marker".

Type: Number
Default Value: 50

When you use bubble markers on your map, their sizes depend on their values. The biggest value will be represented by the largest bubble. Similarly, the smallest value will be represented by the smallest bubble. Bubbles that represent values in between will have sizes proportional to the represented values. To specify the sizes of the largest and smallest bubbles, use the maxSize and minSize properties of the layers object.

minSize

Specifies the pixel-measured diameter of the marker that represents the smallest value. Setting this option makes sense only if the layer type is "marker".

Type: Number
Default Value: 20

When you use bubble markers on your map, their sizes depend on their values. The biggest value will be represented by the largest bubble. Similarly, the smallest value will be represented by the smallest bubble. Bubbles that represent values in between will have sizes proportional to the represented values. To specify the sizes of the largest and smallest bubbles, use the maxSize and minSize properties of the layers object.

name

Specifies the layer name.

Type: String
Cannot be used in themes.

opacity

Specifies the layer opacity (from 0 to 1).

Type: Number
Default Value: 1

Show Example:
jQuery

In this example, markers of the bubble type are used. Their opacity is set to 0.6 using the opacity option.


                                    

                                    

palette

Specifies the name of the palette or a custom range of colors to be used for coloring a layer.

Type: Array|String
Default Value: 'Default'
Accepted Values: 'Default' | 'Soft Pastel' | 'Harmony Light' | 'Pastel' | 'Bright' | 'Soft' | 'Ocean' | 'Vintage' | 'Violet'

A palette defines a range of colors that are used to paint layer elements. This range is divided into segments using the value assigned to the paletteSize option. Each segment contributes a color into a resulting array of colors. The more of these segments, the greater the variety of colors in this array. All available palettes are listed in the accepted values.

In order to apply a palette to a map, follow the next steps.

  • Assign the name of the required palette (or an array of two colors) to the palette option.
  • Use the paletteSize option to define how many colors should be produced from the palette or array specified in the previous step.
  • Specify the index of the color from the colors array, which should be used for coloring an area, using the paletteIndex field of the object returned by the customize callback function.

When using the widget as an ASP.NET MVC Control, you can specify this option using the VizPalette enum. This enum accepts the following values: Default, SoftPastel, HarmonyLight, Pastel, Bright, Soft, Ocean, Vintage and Violet.

Show Example:
jQuery

Use the drop-down menu below to choose which palette to use for coloring the map.


                                    

                                    

paletteSize

Specifies the number of colors in a palette.

Type: Number
Default Value: 0

Assign a number that is greater than 0 to this option in order to use palettes.

Show Example:
jQuery

In this example, the paletteSize option is set to 7. The map contains only seven different colors.


                                    

                                    

selectedBorderColor

Specifies a color for the border of the layer element when it is selected.

Type: String
Default Value: '#303030'

This option does not apply if the layer type is "line".

This option supports the following colors.

Show Example:
jQuery

In this example, you can select an area by a click. When the area is selected, its border is colored in 'dodgerblue'.


                                    

                                    

selectedBorderWidth

Specifies a pixel-measured line width (for layers of a line type) or width for the border of the layer element when it is selected.

Type: Number
Default Value: 2

Show Example:
jQuery

In this example, you can select an area by a click. When an area is selected, its border has a 4-pixel width.


                                    

                                    

selectedColor

Specifies a color for the layer element when it is selected.

Type: String
Default Value: '#d2d2d2'

Show Example:
jQuery

In this example, you can select an area by a click. When the area is selected, it is colored in 'lightseagreen'.


                                    

                                    

selectionMode

Specifies whether single or multiple map elements can be selected on a vector map.

Type: String
Default Value: 'single'
Accepted Values: 'single' | 'multiple' | 'none'

Several options and methods are connected with the selection operation. To specify whether single or multiple areas can be selected at a time, use the selectionMode option. To determine whether a certain area is selected when the widget is created, use the isSelected field of the object returned by the customize callback function.

At runtime, you can do the following operations.

  • Obtain the current selection state of a layer element using its selected() method.

  • Change the current selection state of a layer element using its selected(state) method. Pass true or false to this method.

  • Deselect all the selected layer elements using the clearSelection() method of the map layer.

The change of the selection state invokes the callback function assigned to the onSelectionChanged option. Within this function, you can handle the selection event in the manner you require.

When using the widget as an ASP.NET MVC Control, specify this option using the SelectionMode enum. This enum accepts the following values: None, Single and Multiple.

Show Example:
jQuery

Use the drop-down menu below to change the selectionMode option. To see the effect, click one or more map areas.


                                    

                                    

size

Specifies the size of markers. Setting this option makes sense only if the layer type is "marker" and the elementType is "dot", "pie" or "image".

Type: Number
Default Value: 8

sizeGroupingField

Specifies the field that provides data to be used for sizing bubble markers. Setting this option makes sense only if the layer type is "marker" and the elementType is "bubble".

Type: String
Default Value: undefined

If you need the size of the bubble marker to depend on the value of one of its attributes, assign the name of this attribute to the sizeGroupingField option. The attribute must contain numeric values. After that, specify groups into which attribute values must be classified by assigning an array to the sizeGroups option.

NOTE
If you need to classify a bubble by its value, leave the sizeGroupingField option unassigned.

sizeGroups

Allows you to display bubbles with similar attributes in the same size. Setting this option makes sense only if the layer type is "marker" and the elementType is "bubble".

Type: Array
Default Value: undefined

If you have specified the field that provides marker-sizing data, you need to specify groups into which this data must be classified. For this purpose, assign an array of numbers to the sizeGroups option. Each pair of numbers in this array defines a range of data values.

For example, consider that the sizeGroups array contains four items: [0, 1, 2, 3]. This array specifies three ranges, or groups: 0-1, 1-2 and 2-3. Thus, data values will be split up into three groups. Each group will be assigned a size correlating with the group values. This size will be calculated automatically taking into account the minSize and maxSize values. Markers of those data values that do not match neither group will have a default size.

type

Specifies layer type.

Type: String
Accepted Values: 'area' | 'line' | 'marker'
Cannot be used in themes.

When using the widget as an ASP.NET MVC Control, specify this option using the VectorMapLayerType enum. This enum accepts the following values: Area, Marker and Line.