Convert matplotlib contour plots to geojson
Project description
geojsoncontour
A Python 3 module to convert matplotlib contour plots to geojson. Supports both contour and contourf plots.
Designed to show geographical contour plots, created with matplotlib/pyplot, as vector layer on interactive slippy maps like OpenLayers and Leaflet.
Demo project that uses geojsoncontour: climatemaps.romgens.com
Installation
Install with pip,
pip install geojsoncontour
Usage
Use contour_to_geojson
to create a geojson with contour lines from a matplotlib.contour
plot (not filled).
Use contourf_to_geojson
to create a geojson with filled contours from a matplotlib.contourf
plot.
Contour plot to geojson
import numpy
import matplotlib.pyplot as plt
import geojsoncontour
# Create contour data lon_range, lat_range, Z
<your code here>
# Create a contour plot plot from grid (lat, lon) data
figure = plt.figure()
ax = figure.add_subplot(111)
contour = ax.contour(lon_range, lat_range, Z, cmap=plt.cm.jet)
# Convert matplotlib contour to geojson
geojson = geojsoncontour.contour_to_geojson(
contour=contour,
ndigits=3,
unit='m'
)
For filled contour plots (matplotlib.contourf
) use contourf_to_geojson
.
See example_contour.py and example_contourf.py for simple but complete examples.
Show the geojson on a map
An easy way to show the generated geojson on a map is the online geojson renderer geojson.io or geojson.tools.
Style properties
Stroke color and width are set as geojson properties following https://github.com/mapbox/simplestyle-spec.
Create geojson tiles
Try geojson-vt or tippecanoe if performance is an issue and you need to tile your geojson contours.
Development
Tests
Run all tests,
python -m unittest discover
Release
Install setuptools, wheel and twine:
python -m pip install --upgrade setuptools wheel twine
Increase the version number in setup.py
.
Create dist:
python setup.py sdist bdist_wheel
Upload:
twine upload dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for geojsoncontour-0.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a799c34d84e18d9fb1dc195dee41bf213693a0509c4635a6c6efe863916155ed |
|
MD5 | 2e4838b159afaee6e4e734a12d39980f |
|
BLAKE2b-256 | feb3cd285ad768b56c1ef6f574f90c3d658616221a1f8bce88cf202558d91cf5 |