Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Run tile-reduce map jobs in Python

Project Description


A framework for writing [tile-reduce](
map scripts in Python.

NOTE: This library is experimental and under active development. No official
release has been created.

First read the documentation at [tile-reduce](

`tile-reduce-py` allows you to write the map script in Python. The reducer is
still Javascript.

import mapbox_vector_tile

import tilereduce

class BuildingRoadCount(tilereduce.TR):
def mapper(self, x, y, zoom, data):
if data is None:
return 0

# Decode the raw binary protocol buffer data
td = mapbox_vector_tile.decoder.TileData(2048)
tile = td.getMessage(data)

count = 0
if tile.get('buildings'):
count += len(tile['buildings'])
if tile.get('roads'):
count += len(tile['roads'])

return count

if __name__ == '__main__':

The reduce script is identical as the original Node example except the `map`
argument is now the path to the Python map script.

Release History

This version
History Node


Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers DreamHost DreamHost Log Hosting