Created
April 21, 2015 08:16
-
-
Save ajdawson/82bbcf6fc5b62e35c81f to your computer and use it in GitHub Desktop.
Testing if a point is in a plot domain.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"metadata": { | |
"name": "", | |
"signature": "sha256:409bd164278e719c5bf764bea1477a35a99c96dd0f75b73d59e06d26a404ef2e" | |
}, | |
"nbformat": 3, | |
"nbformat_minor": 0, | |
"worksheets": [ | |
{ | |
"cells": [ | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"%matplotlib inline\n", | |
"import cartopy.crs as ccrs\n", | |
"import shapely.geometry as sgeom\n", | |
"import matplotlib.pyplot as plt" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [], | |
"prompt_number": 1 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# The two coordinate systems:\n", | |
"crs_proj = ccrs.NorthPolarStereo(-40.)\n", | |
"crs_latlon = ccrs.PlateCarree()\n", | |
"\n", | |
"# The plot extent in lat/lon:\n", | |
"x1, x2, y1, y2 = (-75.0, -5.0, 35.0, 80.0)" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [], | |
"prompt_number": 2 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# A Shapely polygon of the desired domain in lat/lon:\n", | |
"domain_in_latlon = sgeom.polygon.LineString([[x1, y1], [x2, y1],\n", | |
" [x2, y2], [x1, y2],\n", | |
" [x1, y1]])\n", | |
"\n", | |
"# Project the geometry to the desired projection and determine its bounds,\n", | |
"# giving you the maximum extent of the plot but without drawing it. You can\n", | |
"# use these bounds to test if a point is in the box they define:\n", | |
"domain_in_proj = crs_proj.project_geometry(domain_in_latlon, crs_latlon)\n", | |
"px1, py1, px2, py2 = domain_in_proj.bounds\n", | |
"\n", | |
"\n", | |
"def simple_inclusion(point, bounding_box):\n", | |
" \"\"\"Simple rectangular inclusion test.\"\"\"\n", | |
" x, y = point\n", | |
" x0, y0, x1, y1 = bounding_box\n", | |
" if x0 <= x <= x1 and y0 <= y <= y1:\n", | |
" return True\n", | |
" return False" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [], | |
"prompt_number": 3 | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"## Example:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Example points, p1 is not in the plot area, p2 is:\n", | |
"p1 = (33, 20)\n", | |
"p2 = (-14, 50)\n", | |
"\n", | |
"# Transform points to projection coordinates:\n", | |
"tp1 = crs_proj.transform_point(p1[0], p1[1], crs_latlon)\n", | |
"tp2 = crs_proj.transform_point(p2[0], p2[1], crs_latlon)\n", | |
"\n", | |
"# Test if the point is in the projection domain using the simple test, for non-rectangular\n", | |
"# plots you'll probably want to use Shapely's features to do the test instead.\n", | |
"print simple_inclusion(tp1, domain_in_proj.bounds)\n", | |
"print simple_inclusion(tp2, domain_in_proj.bounds)\n", | |
"\n", | |
"# Plot the points, only one will show up, the test is correct:\n", | |
"ax = plt.axes(projection=crs_proj)\n", | |
"ax.set_extent((-75.0, -5.0, 35.0, 80.0), crs=crs_latlon)\n", | |
"ax.coastlines()\n", | |
"ax.plot(p1[0], p1[1], 'ro', transform=crs_latlon)\n", | |
"ax.plot(p2[0], p2[1], 'ro', transform=crs_latlon)" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"stream": "stdout", | |
"text": [ | |
"False\n", | |
"True\n" | |
] | |
}, | |
{ | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 4, | |
"text": [ | |
"[<matplotlib.lines.Line2D at 0x7f3a33b3dd10>]" | |
] | |
}, | |
{ | |
"metadata": {}, | |
"output_type": "display_data", | |
"png": "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\n", | |
"text": [ | |
"<matplotlib.figure.Figure at 0x7f3a33d10a90>" | |
] | |
} | |
], | |
"prompt_number": 4 | |
} | |
], | |
"metadata": {} | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment