Search code examples
pythongisopenstreetmap

How can I display OSM tiles using Python?


I'm in the process of generating tiles with generate_tiles.py and I'd like to write a Python app to display them instead of having a web interface. Does anything like that already exist or is there information somewhere on how to write such an app myself?


Solution

  • You can look/edit your map using a desktop application like Tilemill or QGIS (I can't really guess why are you generating tiles if it is not for a web application).

    Tilestache has an internal webserver you can use for testing, it's easy to get it running just using config files.

    A few pointers to get you started (or keep you busy for a few weeks):

    Server side libraries and applications

    • TileStache: very easy to use tile server and tile cache
    • Mapnik: underlying library behind tilestache and tilemill
    • TileLite: lightweight Python tile-server
    • MapOSMatic: written in Python/Django + mapnik ?

    Client side libraries

    • Leaflet: client side library a lot like Google Maps API
    • OpenLayers: makes it easy to put a dynamic map in any web page
    • Wax: adds common utilities to minimal mapping libraries
    • Modest maps: a simple platform to build upon
    • Mapstraction: common interface for numerous javascript mapping libraries

    Tools for custom map creation

    • Tilemill: like css for maps (awesome)
    • OSGeo4W: must have geospatial toolbox for windows

    Markers

    Some related videos from PyCon2012

    Some interesting applications to get you inspired: