Tutorial
This tutorial walks you through mapyta from the absolute minimum to advanced features. Each page introduces exactly one concept on top of the previous one.
Prerequisites
- Python 3.12 or later
- mapyta installed:
uv add mapyta
# or
pip install mapyta
What you'll learn
| Page | Concept |
|---|---|
| Your First Map | Create a map with a single point and export to HTML |
| Lines & Polygons | Add linestrings, polygons, and multi-geometries |
| Markers | Emoji, Font Awesome, and circle markers |
| Tooltips & Popups | Markdown tooltips, click popups, and raw HTML |
| Feature Groups | Toggleable layers with layer control |
| Choropleth Maps | Color-code areas by numeric value |
| Heatmaps | Visualize point density |
| Marker Clusters | Group hundreds of markers at low zoom |
| GeoPandas Integration | Build a map directly from a GeoDataFrame |
| DataFrames (Pandas & Polars) | Add any DataFrame with a WKT geometry column |
| Open data (CBS & PDOK) | Real Dutch datasets: provinces, population density, BAG buildings |
| Coordinate Detection | Automatic RD New → WGS84 transformation |
| Map Configuration | Tile providers, zoom, and optional plugins |
| Text Annotations | Floating labels and site plan markers |
| Export | HTML, PNG, SVG, GeoJSON, download button, async, BytesIO |
| Drawing Tools | Let users draw on the map and capture their input |
| Animated Layers | Ant paths, heatmap-with-time, timestamped GeoJSON |
| Advanced | Merge maps, GeoJSON layers, escape hatch |
| Zoom-dependent Visibility | Hide layers until the user zooms in |
| FAQ | Common questions and answers |