Skip to content

Instantly share code, notes, and snippets.

@jGaboardi
Created November 6, 2017 23:19
Show Gist options
  • Save jGaboardi/c419739ef876ae9552c1f1a8b1189624 to your computer and use it in GitHub Desktop.
Save jGaboardi/c419739ef876ae9552c1f1a8b1189624 to your computer and use it in GitHub Desktop.
geopandas_intersection python 2.7 Gaboardi
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0.2.1\n"
]
}
],
"source": [
"%matplotlib inline\n",
"import geopandas as gpd\n",
"from shapely.geometry import Polygon, LineString\n",
"print gpd.__version__"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"polys = gpd.GeoSeries([Polygon([(0,0), (2,0), (2,2), (0,2)]),\n",
" Polygon([(2,2), (4,2), (4,4), (2,4)])])\n",
"\n",
"lines = gpd.GeoSeries([LineString([(1,3), (3,3)]),\n",
" LineString([(1,1), (1,2.5)])])"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x108452290>"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x11b73db10>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"ax = polys.plot(color='red')\n",
"lines.plot(ax=ax, color='blue')"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"shapely.geometry.polygon.Polygon"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"square = polys.geometry[0]\n",
"type(square)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 ()\n",
"1 LINESTRING (1 1, 1 2)\n",
"dtype: object"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lines.intersection(square)"
]
}
],
"metadata": {
"anaconda-cloud": {},
"kernelspec": {
"display_name": "Python [conda env:py2]",
"language": "python",
"name": "conda-env-py2-py"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.13"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment