Skip to content

Instantly share code, notes, and snippets.

@springmeyer
Forked from timwaters/gist:587215
Created September 20, 2010 17:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save springmeyer/588304 to your computer and use it in GitHub Desktop.
Save springmeyer/588304 to your computer and use it in GitHub Desktop.
<?xml version="1.0" ?>
<Map bgcolor="rgb(255,255,255)" srs="+init=epsg:4326">
<Style name="NYC_Structures4326_style">
<Rule>
<PolygonSymbolizer>
<CssParameter name="fill">rgb(78,110,187)</CssParameter>
<CssParameter name="gamma">0.7</CssParameter>
</PolygonSymbolizer>
<LineSymbolizer>
<CssParameter name="stroke-width">0.96</CssParameter>
</LineSymbolizer>
</Rule>
</Style>
<Layer name="NYC_Structures4326" srs="+init=epsg:4326">
<StyleName>NYC_Structures4326_style</StyleName>
<Datasource>
<Parameter name="file">4326/NYC_Structures4326.shp</Parameter>
<Parameter name="type">shape</Parameter>
</Datasource>
</Layer>
</Map>
#!/usr/bin/python
#
import mapnik
import sys, os
if __name__ == "__main__":
mapfile = "mapnik.xml"
map_uri = "image.png"
ll = mapnik.Envelope(-74.46, 40.47, -73.56, 40.906)
z = 9
w = 600 * z
h = 600 * z
m = mapnik.Map(w,h)
# for details on fixing aspect ratio see:
# https://lists.berlios.de/pipermail/mapnik-users/2010-September/003581.html
mapnik.load_map(m,mapfile)
lonlat = mapnik.Projection('+init=epsg:4326')
merc = mapnik.Projection("+init=epsg:900913")
m.srs = merc.params()
transform = mapnik.ProjTransform(lonlat,merc)
merc_bbox = transform.forward(ll)
m.zoom_to_box(merc_bbox)
mapnik.render_to_file(m, map_uri)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment