dash-openlayers
OpenLayers mapping components for Plotly Dash. Build maps declaratively in Python, use OpenLayers for rendering and editing, and receive map events and feature data in Dash callbacks.
Install
pip install dash-openlayers
Requires Python 3.10 or newer. Dash is installed as a package dependency.
Quick Example
import dash
from dash import Input, Output, html
import dash_openlayers as dol
app = dash.Dash(__name__)
app.layout = html.Div(
[
dol.Map(
id="map",
center=[10, 45],
zoom=5,
children=[
dol.TileLayer(id="osm", source="OSM"),
dol.VectorLayer(
id="places",
geojson={
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {"type": "Point", "coordinates": [10, 45]},
"properties": {"name": "Sample place"},
}
],
},
),
dol.SelectInteraction(id="selection", layerId="places"),
dol.LayerControl(id="layers"),
],
style={"height": "600px"},
),
html.Pre(id="selection-output"),
]
)
@app.callback(Output("selection-output", "children"), Input("selection", "selectedGeoJSON"))
def show_selection(selection):
return str(selection or "Select a feature")
if __name__ == "__main__":
app.run(debug=True)
Components
- Maps, synchronized view state, custom Proj4 projections, and click events.
- OSM/XYZ, GeoJSON vector, WMS, WMTS, MVT vector-tile, and WFS GeoJSON layers.
- Draw, select, modify, snapping, per-feature topology validation, and undo/redo.
- GeoJSON/WKT input and GeoJSON/WKT/TopoJSON edit output.
- Point clustering, decluttering, and layer visibility/opacity/order controls.
WFS-T writes are not performed by WFSLayer; see the guarded example in
tests/demos/wfs_demo.py for an application-owned
transaction callback.
Documentation
Contributing
See CONTRIBUTING.md for development setup and workflow.
Metadata
Release files for dash-openlayers 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dash_openlayers-0.0.2.tar.gz | 759.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dash_openlayers-0.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.5 MB
Release files / dash_openlayers-0.0.2.tar.gz
| Download URL | dash_openlayers-0.0.2.tar.gz |
|---|---|
| Size | 759.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f2e92c8267d79f25a6ad7a1e90bdd720140c3f8152b28e831f701ac01b6796eb
|
|
BLAKE2b-256 checksum How to use checksums |
409c4fca8fabd5414b01a8e3e11a9d5b0cdcbd59cc69baa8cc1a88c6f5323073
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.
Transparency logRelease files / dash_openlayers-0.0.2-py3-none-any.whl
| Download URL | dash_openlayers-0.0.2-py3-none-any.whl |
|---|---|
| Size | 776.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9e4bdef7f73ab3f7a14056da3bce79f3e638dc41eb922d187e163fe7d4b9568a
|
|
BLAKE2b-256 checksum How to use checksums |
a306b9b010fcac5fe5886e4483f1451b21a65eccb261b1004994cbaeb7ad5f94
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.
Transparency log