A personal cartographic project connecting Aoraki / Mount Cook, the Ganga River, and Delhi through reproducible Python mapping.
| Project detail | Description |
|---|---|
| Academic context | GISC401 Geospatial Data Science, University of Canterbury |
| Course result | A+ |
| Portfolio focus | Place-based storytelling, CRS selection, vector processing, and cartographic composition |
| Core tools | Python, GeoPandas, Shapely, Matplotlib, Contextily, Natural Earth, OpenStreetMap |
Tena koutou katoa!
Ko Aoraki toku maunga.
Ko te Ganga toku awa.
I tipu ake ahau ki Delhi.
He akonga ahau ki te Whare Wananga o Waitaha.
Ko Sahil Mann toku ingoa.
Tena tatou katoa!
This project uses three maps to communicate meaningful connections to mountain, river, and city. Each composition combines a focal spatial feature with national context, projected coordinates, a legend, north arrow, scale bar, CRS statement, and source attribution.
The portfolio notebook preserves the completed mapping logic while removing assessment packaging, student identifiers, private paths, generated submission archives, and report-building cells. It runs from compact, open-data GeoPackages included in the repository and can optionally request OpenStreetMap basemap tiles.
- Aoraki / Mount Cook: NZTM2000 (
EPSG:2193) provides metre units and a New Zealand-specific projected CRS. The national park boundary establishes landscape context and an inset locates the peak within Aotearoa New Zealand. - Ganga River: Web Mercator (
EPSG:3857) supports optional web-basemap context. Natural Earth provides the river line and India boundary; the inset makes the river's national extent legible. - Delhi: The administrative boundary is emphasised with a two-layer outline and an India inset. The map uses Web Mercator for basemap alignment, not for area calculation.
.
|-- README.md
|-- requirements.txt
|-- assets/
| |-- aoraki_mount_cook_geospatial_map.png
| |-- ganga_river_geospatial_map.png
| `-- delhi_geospatial_boundary_map.png
|-- data/
| |-- LICENSES.md
| `-- processed/
| `-- six compact GeoPackage layers
`-- notebooks/
`-- mapped_pepeha_geospatial_python.ipynb
Use Python 3.10 to 3.12.
python -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
jupyter lab notebooks/mapped_pepeha_geospatial_python.ipynbThe notebook runs offline with vector layers only. To add OpenStreetMap tiles:
ADD_BASEMAP=1 jupyter lab notebooks/mapped_pepeha_geospatial_python.ipynbInternet access and attribution are required when basemap tiles are requested.
- Natural Earth: India and New Zealand country boundaries, the Delhi administrative boundary, and the Ganges river feature. Natural Earth data are in the public domain.
- OpenStreetMap contributors: Aoraki / Mount Cook National Park and peak features, used under the Open Database Licence. Required attribution is retained.
- OpenStreetMap basemap tiles: optional display context through Contextily, with attribution retained on rendered maps.
See data/LICENSES.md for source links and redistribution notes.
This is a personal learning project and a map-based expression of Sahil Mann's own place connections. It is not an authoritative statement about whakapapa, mana whenua, te ao Maori, or the cultural relationships of others.
Python, GeoPandas, Shapely, Matplotlib, Contextily, GeoPackage, CRS selection, vector reprojection, geometry filtering, cartographic hierarchy, map insets, scale bars, north arrows, source attribution, offline reproducibility, and culturally careful place-based communication.


