Skip to main content

Convert matplotlib contour plots to geojson

Project description

Build Status PyPI version Coverage Status
A Python 3 module to convert matplotlib contour plots to geojson.

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

Currently only supports contour lines.

Installation

The recommended way to install is via pip,

$ pip install geojsoncontour

Usage

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, levels=levels, cmap=plt.cm.jet)

# Convert matplotlib contour to geojson
geojsoncontour.contour_to_geojson(
    contour=contour,
    geojson_filepath='out.geojson',
    contour_levels=levels,
    ndigits=3,
    unit='m'
)

See example1.py for a basic but complete example.

Show the geojson on a map

An easy way to show the generated geojson on a map is the online geojson renderer geojson.io.

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.

Tests

Run all tests,

python -m unittest discover

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

geojsoncontour-0.1.2-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file geojsoncontour-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for geojsoncontour-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 06de1a98be155b1bdba96a27964b531ca4c430846046564b8889b129f8ee1023
MD5 7c206610f945dd6aa3971f40ba824503
BLAKE2b-256 b6e346ec6fb0dab0d8c2e0dd926bb04401fb235b374ffbd9be1d1f2963c6e9c5

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page