Add a bubble layer to a map

This article shows you how to render point data from a data source as a bubble layer on a map. Bubble layers render points as circles on the map with a fixed pixel radius.


Bubble layers by default will render the coordinates of all geometries in a data source. To limit the layer such that it only renders point geometry features set the filter property of the layer to ['==', ['geometry-type'], 'Point'] or ['any', ['==', ['geometry-type'], 'Point'], ['==', ['geometry-type'], 'MultiPoint']] if you want to include MultiPoint features as well.

Add a bubble layer

The following code loads an array of points into a data source. Then, it connects the data points are to a bubble layer. The bubble layer renders the radius of each bubble with five pixels and a fill color of white. And, a stroke color of blue, and a stroke width of six pixels.

//Add point locations.
var points = [
    new[-73.985708, 40.75773]),
    new[-73.985600, 40.76542]),
    new[-73.985550, 40.77900]),
    new[-73.975550, 40.74859]),
    new[-73.968900, 40.78859])

//Create a data source and add it to the map.
var dataSource = new atlas.source.DataSource();

//Add multiple points to the data source.

//Create a bubble layer to render the filled in area of the circle, and add it to the map.
map.layers.add(new atlas.layer.BubbleLayer(dataSource, null, {
    radius: 5,
    strokeColor: "#4288f7",
    strokeWidth: 6, 
    color: "white" 

Below is the complete running code sample of the above functionality.

Show labels with a bubble layer

This code shows you how to use a bubble layer to render a point on the map. And, how to use a symbol layer to render a label. To hide the icon of the symbol layer, set the image property of the icon options to 'none'.

Customize a bubble layer

The Bubble layer only has a few styling options. Here is a tool to try them out.

Next steps

Learn more about the classes and methods used in this article:

See the following articles for more code samples to add to your maps: