{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Converting coordinates between projections" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This is a follow up to [a question](https://www.linkedin.com/grp/post/3985504-6006363602393530370) from Chris Jackson (Imperial) on LinkedIn. \n", "\n", "Here are the coordinates we have, UTM zone 16, WGS84 datum:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "x = 812136.38\n", "y = 10151410.68" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Those look like they are in feet. Let's convert them:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(247539.168624, 3094149.9752640002)" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x *= 0.3048\n", "y *= 0.3048\n", "x, y" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will use the [`pyproj`](https://pypi.python.org/pypi/pyproj) project. " ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import pyproj as pp" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Set up the projections using [EPSG codes](http://spatialreference.org/) (we'll define the target projection too while we're at it)." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "utm15_wgs84 = pp.Proj(init='epsg:32615') \n", "utm16_wgs84 = pp.Proj(init='epsg:32616')\n", "\n", "utm15_nad27 = pp.Proj(init='epsg:26715')\n", "utm16_nad27 = pp.Proj(init='epsg:26716')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's just check where we are with a quick map:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "ename": "ImportError", "evalue": "No module named 'mpl_toolkits.basemap'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mImportError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mfrom\u001b[0m \u001b[0mmpl_toolkits\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbasemap\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mBasemap\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mmatplotlib\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpyplot\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mget_ipython\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmagic\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'matplotlib inline'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mImportError\u001b[0m: No module named 'mpl_toolkits.basemap'" ] } ], "source": [ "from mpl_toolkits.basemap import Basemap\n", "import matplotlib.pyplot as plt\n", "% matplotlib inline" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "ename": "NameError", "evalue": "name 'Basemap' is not defined", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m m = Basemap(width=6000000,height=6000000,projection='lcc',\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mresolution\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'c'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mlat_1\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m45\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mlat_2\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m55\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0mlat_0\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m50\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mNameError\u001b[0m: name 'Basemap' is not defined" ] } ], "source": [ "m = Basemap(width=6000000,height=6000000,projection='lcc',\n", " resolution='c',\n", " lat_1=45,\n", " lat_2=55,\n", " lat_0=50,\n", " lon_0=-100.)\n", "\n", "# Set up the map. \n", "m.drawcoastlines()\n", "m.drawmapboundary(fill_color='#aaccee')\n", "m.fillcontinents(color='#aaddaa',lake_color='#aaccee')\n", "\n", "lon, lat = utm16_wgs84(x, y, inverse=True) # To convert to lon, lat\n", "map_x, map_y = m(lon, lat)\n", "m.scatter(map_x, map_y, 12, marker='o', color='red')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Coordinate transformation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Looks reasonable, let's do the transformation..." ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": false }, "outputs": [], "source": [ "new_coords = pp.transform(utm16_nad27, # From\n", " utm15_wgs84, # To\n", " x, y) # Coordinates" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "([668289.7894208364, 668389.5137875683, 668489.2381542905],\n", " [498.66323992501503, 598.3968759964243, 698.1308414315228])" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "new_coords # These are in metres!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Sanity check with another map:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "m = Basemap(width=6000000,height=6000000,projection='lcc',\n", " resolution='c',\n", " lat_1=45,\n", " lat_2=55,\n", " lat_0=50,\n", " lon_0=-100.)\n", "\n", "# Set up the map. \n", "m.drawcoastlines()\n", "m.drawmapboundary(fill_color='#aaccee')\n", "m.fillcontinents(color='#aaddaa',lake_color='#aaccee')\n", "\n", "new_x, new_y = new_coords\n", "new_lon, new_lat = utm15_nad27(new_x, new_y, inverse=True) # To convert to lon, lat\n", "new_map_x, new_map_y = m(new_lon, new_lat)\n", "m.scatter(new_map_x, new_map_y, 12, marker='o', color='red')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Sweet!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

© 2015 Agile Geoscience — CC-BY — Have fun!   

" ] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python [python3]", "language": "python", "name": "Python [python3]" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.2" } }, "nbformat": 4, "nbformat_minor": 0 }