Skip to content

Layer gallery ​

Every layer type the panel can build from query rows, with the query that produces it. Nineteen of kepler's twenty-six registered layer types can be driven by data — and the panel registers layer types of its own, shown with amber icons in kepler's layer menu: among them Streamlines and a vector field for a grid of velocities, Symbols for anything with a bearing, Markers for points you drag, a Zarr tileset for a store of arrays, Photos for a picture at each point, and XYZ tiles for a {z}/{x}/{y} tile server.

Two of kepler's own, a5 and geohash, are grid-index layers like H3 and S2, detected from a column's name. A third, kepler's Flow Field, draws streamlines through scattered velocities where the panel's Streamlines need a grid.

Many of these are easier to judge moving than in a still: they are drawing right now on the live demo dashboards, which anyone can open as a read-only viewer.

Of the seven that take a URL instead, two can now be driven by one as well — a query that returns a link to imagery draws a rasterTile layer, and one that names a service draws a wms layer. See Rasters and WMS services. The rest — vector tiles, 3D tiles, a bitmap, 3D models and kepler's own Zarr layer — and adding any of them by hand, are on Layers configured with a URL.

Which ones you get without asking ​

Some are built for you when the columns are right. The rest you add by hand in kepler's layer panel, choosing the dataset and pointing the layer's columns at it.

Built automaticallyTrigger
pointa latitude/longitude pair
geojsona geometry column
hexagonId (H3)a column whose values are valid H3 indices
geohasha column named geohash, geo_hash or geohash_id. A geohash column also gives a Point layer at the cells' centres. See geohash.
a5a column named a5, a5_token or a5_id, holding hexadecimal cell ids. See a5.
tripa trip id and a time and a position
floworigin and destination columns
flowfielda position and a velocity, and no trip id — a layer type this plugin adds, named Streamlines. kepler's own Flow Field would be created for the same grid, and is removed. See Velocity fields.
flowFieldcolumns named exactly u and v beside a position, when the rows are not a regular grid — kepler's own Flow Field, which the panel leaves in place. See Velocity fields.
vectorfieldnever guessed — switch a Streamlines layer's type, or add it from Add Layer. Arrows and wind barbs over the same grid. See Velocity fields.
symbola position and a numeric bearing, and no trip id — a layer type this plugin adds, named Symbols. The Point layer kepler would guess from the same coordinates is removed. See Symbols.
markersnever guessed — add it from Add Layer. Draggable reference points bound to dashboard variables; it draws nothing from its dataset. See Markers.
linea query chosen in Draw as a route, or edges with source and target beside a query of nodes. See Routes and networks.
cellsnever guessed — add it from Add Layer on a dataset with coordinates. Points counted in H3, A5, S2 or geohash cells at a level that follows the zoom. See cells.
photosnever guessed — add it from Add Layer on a dataset with coordinates and a column of picture addresses, and pick that column in its panel. A converted Geomap Photos layer is one. See photos.

See How a query becomes a map.

About these images ​

Fifteen of them come from the plugin's own layer gallery dashboard, provisioning/dashboards/layers.json, which is provisioned into the dev Grafana and shows them on synthetic data around Cuenca, Ecuador. Bring it up with npm run server and open Kepler.gl layer gallery. The two the panel adds that the gallery does not carry — symbol and markers — are photographed on their own provisioned dashboards, symbols.json and markers.json. The seven kepler layers after them — geohash, a5, flowField, vectorTile, tile3d, bitmap and 3D — were photographed the same way on a test Grafana, from dashboards that are not provisioned, so npm run docs:shots does not retake them.

They are captured by npm run docs:shots, one panel at a time through Grafana's single-panel view — a dozen maps on one page would exceed the browser's WebGL context budget and black out the oldest. kepler's side panel and playback widget are hidden for the shot; they overlay the map rather than sitting beside it, so hiding them reveals the map underneath.

The gallery is a regression test

A layer type that stops rendering after a kepler.gl version bump is visible immediately as a blank map in a page you scroll. That is the reason it exists, and the reason it is worth keeping current.

Apache-2.0. Bundles kepler.gl (MIT) and flowmap.gl (Apache-2.0).