pyproj is a Python interface to the PROJ.4 (http://trac.osgeo.org/proj/) functions. It allows you to transform coordinates between coordinate systems.
Install pyproj using pip
Assuming you're using pip to install Python packages:
$ pip install pyproj |
Example
My apartment is located around 12.5996, 55.6644 in long/lat. Where is it located in epsg:25832?
p1 = Proj(init='epsg:25832') x1, y1 = p1(12.5996, 55.6644) # long/lat # x1,y1 is 726386.5282272529, 6174604.596763284 |
Another way to initialize p1 is to use a PROJ4 string (http://spatialreference.org/ref/epsg/25832/proj4/):
p1b = Proj('+proj=utm +zone=32 +ellps=GRS80 +units=m +no_defs') p1b(12.601, 55.6617) == p1(12.601, 55.6617) # True |
Transform coordinate back to long/lat (epsg:4326):
g1 = p1(x1,y1,inverse=True) # g1 is (12.600999999971785, 55.6616999997963) |
As can be seen, these are not the original coordinates, but close enough.
Transformations are done with the transform function:
p2 = Proj(init='epsg:4326') g2 = transform(p1,p2,x1,y1) # g2 is (12.600999999971785, 55.6616999997963) g1 == g2 # True |