A map server for NetCDF data

netcdf, django, map server
pip install ncdjango==0.5.2


ncdjango 1.0

Build Status Coverage Status

Ncdjango turns Django projects into map servers backed by NetCDF datasets. It can be added Django project to provide various web interfaces to NetCDF data and geoprocessing tools written in Python which operate on NetCDF data.


This project grew out of a need for a map server capable of delivering time-series raster data from NetCDF data, with enough extensibility to support different web APIs for the same map service. The result is a Django app which adds a range of map service capabilities to a Django project. Currently, ncdjango includes a partial implementation of the ArcGIS REST API with the added feature of per-request styling. It also includes a data interface which can provide summary information about service data and generate class breaks (equal, quantile, or natural breaks) based on the service data.

Ncdjango provides an admin API for creating and managing map services, and a geoprocessing framework which allows clients to execute processing jobs against NetCDF result. Job results can be automatically published as new services, meaning that a web client could call a geoprocessing job, and upon its completion, show the processed results in a map.

Use cases

Ncdjango is used to provide map services of NetCDF data for Data Basin. Data Basin users can upload NetCDF datasets and view and share them in a web map, all with no programming or server coniguration. Example: NARCCAP Monthly Average Maximum Daily Temperature

It is also used in the Seedlot Selection Tool both to provide map services of NetCDF data, and to implement the geoprocessing needs for the tool and map services of the results.


Full documentation available here.