Skip to content

GeoSet Map Layer

Lance Hawkins edited this page Feb 23, 2026 · 10 revisions

GeoSet Map Layer Chart

The GeoSet Map Layer (deck_geoset_map_layer) is the core chart type for rendering geospatial data. It renders a single layer of geographic features on an interactive map and is the building block for GeoSet Multi Map Chart.

Screenshot 2026-02-23 at 4 07 24 PM

Creating a Chart

  1. In Superset, go to Charts → + Chart
  2. Select your dataset and choose GeoSet Map Layer as the chart type
  3. In the Map Configuration panel, configure your layer

geoset-chart-selection geojson-config-control-chart-builder

Map Configuration Controls

GeoJSON Column

Select the column in your dataset that contains GeoJSON geometry. This can be a geometry column (PostGIS) or a text column containing GeoJSON strings.

Layer Type

Type Description
Polygon Filled polygons with configurable stroke. Best for boundary/area data.
Point Individual points or icons at coordinate locations. Supports clustering.
Line Polylines and paths. Supports dashed/dotted styles.
GeoJSON Raw GeoJSON — auto-detects geometry type from the data.

Row Limit

Maximum number of features to load. For large datasets, increase this or use server-side filtering with Filters.

Autozoom

When enabled, the map automatically fits its viewport to the extent of the loaded features on each query. When disabled, you control the viewport manually.

Viewport

Sets the initial map center, zoom, pitch, and bearing. Only visible when Autozoom is off.

  • Capture Map Viewport — click to snap the popover values to the current map position
  • Enable Static Viewport — locks the map to the saved viewport; panning and zooming will not change the saved position
  • Save — persists the viewport values
  • Close — reverts to the last saved viewport

Mapbox Style

Choose the base map style (streets, satellite, dark, light, etc.). Requires a valid Mapbox API key in your environment.

Min/Max Zoom Slider

Sets the zoom range at which this layer is visible. Useful for multi-layer maps where you want different levels of detail at different zoom levels.

Point Clustering

Only available for the Point layer type.

Control Description
Enable Clustering Groups nearby points into cluster circles
Cluster Radius Pixel radius for grouping points into a cluster
Min Zoom Zoom level at which clustering stops and individual points appear
Min Points Minimum number of points required to form a cluster

Hover Data Columns

Columns to display in the tooltip when hovering over a feature.

Feature Info Columns

Columns to display in the click popup when a feature is clicked.

GeoJSON Config

The GeoJSON Config editor controls how features are styled and labeled. It accepts a JSON object with the following top-level keys.

globalColoring

Applies a single style to all features. Used when you don't need per-category or per-value coloring.

{
  "globalColoring": {
    "fillColor": [40, 147, 179, 255],
    "strokeColor": [0, 0, 0, 255],
    "strokeWidth": 2,
    "fillPattern": "solid"
  }
}
Field Type Description
fillColor [R, G, B, A] Fill color as RGBA (0–255)
strokeColor [R, G, B, A] Stroke/outline color as RGBA
strokeWidth number Stroke width in pixels
fillPattern string "solid" or an icon name for point layers

colorByCategory

Colors features by a categorical column. Each category maps to a color and an optional legend label.

{
  "colorByCategory": {
    "dimension": "fire_cause",
    "categoricalColors": [
      {
        "Human": {
          "fillColor": [255, 100, 0, 255],
          "legend_entry_name": "Human Caused"
        }
      },
      {
        "Natural": {
          "fillColor": [0, 180, 80, 255],
          "legend_entry_name": "Natural"
        }
      }
    ],
    "defaultLegendName": ["Other"]
  }
}
Field Description
dimension The dataset column name to color by
categoricalColors Array of { category_value: { fillColor, legend_entry_name } } objects
defaultLegendName Label shown in the legend for values not in categoricalColors

colorByValue

Colors features using a gradient based on a numeric column value.

{
  "colorByValue": {
    "valueColumn": "max_wind_speed",
    "upperBound": 150,
    "lowerBound": 0,
    "startColor": [255, 255, 0, 255],
    "endColor": [255, 0, 0, 255],
    "breakpoints": []
  }
}
Field Description
valueColumn The numeric column to map to color
upperBound Value that maps to endColor. Set to null to use the data maximum.
lowerBound Value that maps to startColor. Set to null to use the data minimum.
startColor RGBA color for the lowest value
endColor RGBA color for the highest value
breakpoints Optional array of intermediate { value, color } stops

legend

Controls how this chart's layer appears in a multi-layer legend.

{
  "legend": {
    "title": "Storm Data",
    "name": "Storm Track Points"
  }
}
Field Description
title Group heading in the multi-layer legend
name Label for this specific layer within the group

Clone this wiki locally