{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Geographic Maps\n",
"\n",
"In this reading, we'll learn how to use geopandas to manipulate and plot geographic data. geopandas is based on regular pandas, so we'll be using GeoDataFrames and GeoSeries, which are types that inherit from the regular ones we have been using."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"plt.rcParams[\"font.size\"] = 16"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Install\n",
"\n",
"Before installing anything, make sure you are on version 19.0.0 or later of pip:"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"pip 21.0.1 from /home/tharter/.local/lib/python3.6/site-packages/pip (python 3.6)\r\n"
]
}
],
"source": [
"!pip3 --version"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"If not, pip can upgrade itself with this:\n",
"\n",
"```\n",
"pip3 install --upgrade pip\n",
"```\n",
"\n",
"You can then install geopandas and some other packages it uses like this:\n",
"\n",
"```\n",
"pip3 install geopandas shapely descartes geopy\n",
"```\n",
"\n",
"Finally, you'll need to install rtree with `apt` to enable some features we'll learn:\n",
"\n",
"```\n",
"sudo apt install -y python3-rtree\n",
"```"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Shapefiles\n",
"\n",
"Shapefiles contain geographic infomation, such as coordinates of points, or regional boundaries. There are many places you can find shapefiles online, such as here for census data (https://www.census.gov/geographies/mapping-files/time-series/geo/tiger-line-file.html) and here for Madison data (https://data-cityofmadison.opendata.arcgis.com/search?tags=boundaries).\n",
"\n",
"From the latter, we'll search for \"Lakes and Rivers\", then click \"Download\", then right-click \"Shapefile\" and \"Copy Link Address\".\n",
"\n",
"`wget https://opendata.arcgis.com/datasets/c46082b091a941f8b2ded1dd115a1a05_8.zip -O lakes.zip`\n",
"\n",
"That saves the shapefile as \"lakes.zip\". Let's peek inside using `unzip -l`:"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Archive: lakes.zip\r\n",
" Length Date Time Name\r\n",
"--------- ---------- ----- ----\r\n",
" 9958 2021-03-10 14:14 Lakes_and_Rivers.dbf\r\n",
" 1222320 2021-03-10 14:14 Lakes_and_Rivers.shp\r\n",
" 145 2021-03-10 14:14 Lakes_and_Rivers.prj\r\n",
" 1612 2021-03-10 14:14 Lakes_and_Rivers.shx\r\n",
" 5 2021-03-10 14:14 Lakes_and_Rivers.cpg\r\n",
"--------- -------\r\n",
" 1234040 5 files\r\n"
]
}
],
"source": [
"!unzip -l lakes.zip"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Shapefiles are really a collection of files, including a .shp. Sometimes this collection of files is stored in a directory and sometimes in a zip.\n",
"\n",
"`geopandas.read_file` knows how to read shapefiles. You can pass either a directory name, or a zip name; if the latter, prefix it with \"zip://\":"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" OBJECTID \n",
" SHAPESTAre \n",
" SHAPESTLen \n",
" geometry \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 1 \n",
" 39958.447479 \n",
" 782.327754 \n",
" POLYGON ((-89.49887 43.08164, -89.49901 43.081... \n",
" \n",
" \n",
" 1 \n",
" 2 \n",
" 31880.854431 \n",
" 797.842450 \n",
" POLYGON ((-89.48482 43.08431, -89.48497 43.084... \n",
" \n",
" \n",
" 2 \n",
" 3 \n",
" 3699.958649 \n",
" 814.712984 \n",
" POLYGON ((-89.51718 43.10277, -89.51725 43.102... \n",
" \n",
" \n",
" 3 \n",
" 4 \n",
" 1174.258911 \n",
" 797.157265 \n",
" POLYGON ((-89.51869 43.10268, -89.51866 43.102... \n",
" \n",
" \n",
" 4 \n",
" 5 \n",
" 40693.432434 \n",
" 848.431555 \n",
" POLYGON ((-89.54302 43.10091, -89.54301 43.100... \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" OBJECTID SHAPESTAre SHAPESTLen \\\n",
"0 1 39958.447479 782.327754 \n",
"1 2 31880.854431 797.842450 \n",
"2 3 3699.958649 814.712984 \n",
"3 4 1174.258911 797.157265 \n",
"4 5 40693.432434 848.431555 \n",
"\n",
" geometry \n",
"0 POLYGON ((-89.49887 43.08164, -89.49901 43.081... \n",
"1 POLYGON ((-89.48482 43.08431, -89.48497 43.084... \n",
"2 POLYGON ((-89.51718 43.10277, -89.51725 43.102... \n",
"3 POLYGON ((-89.51869 43.10268, -89.51866 43.102... \n",
"4 POLYGON ((-89.54302 43.10091, -89.54301 43.100... "
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import geopandas\n",
"df = geopandas.read_file(\"lakes.zip\")\n",
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can see that we get back a GeoDataFrame, which (based on `__mro__`) is a descendent of the regular pandas DataFrame (meaning we can everything we can with regular DataFrames, and then some):"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"geopandas.geodataframe.GeoDataFrame"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(df)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(geopandas.geodataframe.GeoDataFrame,\n",
" geopandas.base.GeoPandasBase,\n",
" pandas.core.frame.DataFrame,\n",
" pandas.core.generic.NDFrame,\n",
" pandas.core.base.PandasObject,\n",
" pandas.core.accessor.DirNamesMixin,\n",
" pandas.core.base.SelectionMixin,\n",
" pandas.core.indexing.IndexingMixin,\n",
" object)"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(df).__mro__"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"GeoDataFrames contain a special GeoSeries column:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"geopandas.geoseries.GeoSeries"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(df[\"geometry\"])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Which in turn contains various shape objects (mostly polygons) from the shapely module we installed earlier:"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"image/svg+xml": [
" "
],
"text/plain": [
""
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.loc[0, \"geometry\"]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"What is the index of the biggest shape?"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"131"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"biggest_idx = df[\"SHAPESTAre\"].idxmax()\n",
"biggest_idx"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"What shape is that?"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"image/svg+xml": [
" "
],
"text/plain": [
""
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.loc[biggest_idx, \"geometry\"]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Lake Mendota!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can plot them all at once:"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"df.plot(color=\"lightblue\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In the map, the x-axis is longitude and the y-axis is latitude; these are degrees of an angle (out of 360). This is the system used for GPS (https://en.wikipedia.org/wiki/Geographic_coordinate_system), but there are also other *coordinate reference systems* (CRS) available.\n",
"\n",
"We can view the current .crs being used as well as try another one (many different coordinate systems are assigned an EPSG code: https://en.wikipedia.org/wiki/EPSG_Geodetic_Parameter_Dataset):"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"Name: WGS 84\n",
"Axis Info [ellipsoidal]:\n",
"- Lat[north]: Geodetic latitude (degree)\n",
"- Lon[east]: Geodetic longitude (degree)\n",
"Area of Use:\n",
"- name: World.\n",
"- bounds: (-180.0, -90.0, 180.0, 90.0)\n",
"Datum: World Geodetic System 1984\n",
"- Ellipsoid: WGS 84\n",
"- Prime Meridian: Greenwich"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.crs"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" OBJECTID \n",
" SHAPESTAre \n",
" SHAPESTLen \n",
" geometry \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 1 \n",
" 39958.447479 \n",
" 782.327754 \n",
" POLYGON ((296586.503 4772912.001, 296575.468 4... \n",
" \n",
" \n",
" 1 \n",
" 2 \n",
" 31880.854431 \n",
" 797.842450 \n",
" POLYGON ((297739.320 4773174.340, 297726.376 4... \n",
" \n",
" \n",
" 2 \n",
" 3 \n",
" 3699.958649 \n",
" 814.712984 \n",
" POLYGON ((295166.302 4775303.433, 295160.970 4... \n",
" \n",
" \n",
" 3 \n",
" 4 \n",
" 1174.258911 \n",
" 797.157265 \n",
" POLYGON ((295043.161 4775296.300, 295045.784 4... \n",
" \n",
" \n",
" 4 \n",
" 5 \n",
" 40693.432434 \n",
" 848.431555 \n",
" POLYGON ((293057.855 4775159.268, 293057.962 4... \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" OBJECTID SHAPESTAre SHAPESTLen \\\n",
"0 1 39958.447479 782.327754 \n",
"1 2 31880.854431 797.842450 \n",
"2 3 3699.958649 814.712984 \n",
"3 4 1174.258911 797.157265 \n",
"4 5 40693.432434 848.431555 \n",
"\n",
" geometry \n",
"0 POLYGON ((296586.503 4772912.001, 296575.468 4... \n",
"1 POLYGON ((297739.320 4773174.340, 297726.376 4... \n",
"2 POLYGON ((295166.302 4775303.433, 295160.970 4... \n",
"3 POLYGON ((295043.161 4775296.300, 295045.784 4... \n",
"4 POLYGON ((293057.855 4775159.268, 293057.962 4... "
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df2 = df.to_crs(\"epsg:32616\")\n",
"df2.head()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"Name: WGS 84 / UTM zone 16N\n",
"Axis Info [cartesian]:\n",
"- E[east]: Easting (metre)\n",
"- N[north]: Northing (metre)\n",
"Area of Use:\n",
"- name: Between 90°W and 84°W, northern hemisphere between equator and 84°N, onshore and offshore. Belize. Canada - Manitoba; Nunavut; Ontario. Costa Rica. Cuba. Ecuador - Galapagos. El Salvador. Guatemala. Honduras. Mexico. Nicaragua. United States (USA).\n",
"- bounds: (-90.0, 0.0, -84.0, 84.0)\n",
"Coordinate Operation:\n",
"- name: UTM zone 16N\n",
"- method: Transverse Mercator\n",
"Datum: World Geodetic System 1984\n",
"- Ellipsoid: WGS 84\n",
"- Prime Meridian: Greenwich"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df2.crs"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notice that for `df.crs`, we are using a coordinate system based on degrees:\n",
"```\n",
"- Lat[north]: Geodetic latitude (degree)\n",
"- Lon[east]: Geodetic longitude (degree)\n",
"```\n",
"\n",
"Whereas for `dfs2.crs`, we are using one based on meters:\n",
"```\n",
"- E[east]: Easting (metre)\n",
"- N[north]: Northing (metre)\n",
"```\n",
"\n",
"One advantage of using a system based on meters instead of angles is that sizes and lengths are meaningful."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.004444191930664349"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.loc[biggest_idx, \"geometry\"].area # doesn't mean anything if we have angles"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Lake Mendota is 40.196186737857346 square km\n"
]
}
],
"source": [
"sq_km = df2.loc[biggest_idx, \"geometry\"].area / 1e6\n",
"print(f\"Lake Mendota is {sq_km} square km\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Wikipedia says it is 39.4 sq km (https://en.wikipedia.org/wiki/Lake_Mendota), so the latter is about right.\n",
"\n",
"The disadvantage of a meter-based coordinate system is that we're effectively distorting earth to be flat. This doesn't create too much error for a small region, but it doesn't work for the whole planet, so the meter-based CRS are only for specific regions.\n",
"\n",
"There are a collection of `epsg:326??` and `epsg:327??` CRS for the northern and southern hemospheres, respectively. The `??` represents one of 60 zones in the UTM system (https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system).\n",
"\n",
"Madison, WI is zone 16 of the northern hemosphere (see map here: https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system#/media/File:Utm-zones-USA.svg), which is why we use `epsg:32616`.\n",
"\n",
"If we plot using this CRS, we get x and y axes in meters, with the origin (\"0,0\" point) somewhere down and to the left of where we plotted the map."
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(37.676161295510724, 0.5, 'y (meters)')"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ax = df2.plot(color=\"lightblue\")\n",
"ax.set_xlabel(\"x (meters)\")\n",
"ax.set_ylabel(\"y (meters)\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Plotting an Address\n",
"\n",
"Let's plot a point for Bascom Hall on the map. Where is it located? *Geocoding* is the process of converting an address or name of a landmark to coordinates. geopandas uses the `geopy` package we installed earlier for geocoding. `geopy` can use different online services to do geocoding:"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'algolia': geopy.geocoders.algolia.AlgoliaPlaces,\n",
" 'arcgis': geopy.geocoders.arcgis.ArcGIS,\n",
" 'azure': geopy.geocoders.azure.AzureMaps,\n",
" 'baidu': geopy.geocoders.baidu.Baidu,\n",
" 'baiduv3': geopy.geocoders.baidu.BaiduV3,\n",
" 'banfrance': geopy.geocoders.banfrance.BANFrance,\n",
" 'bing': geopy.geocoders.bing.Bing,\n",
" 'databc': geopy.geocoders.databc.DataBC,\n",
" 'geocodeearth': geopy.geocoders.geocodeearth.GeocodeEarth,\n",
" 'geocodefarm': geopy.geocoders.geocodefarm.GeocodeFarm,\n",
" 'geonames': geopy.geocoders.geonames.GeoNames,\n",
" 'google': geopy.geocoders.googlev3.GoogleV3,\n",
" 'googlev3': geopy.geocoders.googlev3.GoogleV3,\n",
" 'geolake': geopy.geocoders.geolake.Geolake,\n",
" 'here': geopy.geocoders.here.Here,\n",
" 'ignfrance': geopy.geocoders.ignfrance.IGNFrance,\n",
" 'mapbox': geopy.geocoders.mapbox.MapBox,\n",
" 'mapquest': geopy.geocoders.mapquest.MapQuest,\n",
" 'maptiler': geopy.geocoders.maptiler.MapTiler,\n",
" 'nominatim': geopy.geocoders.nominatim.Nominatim,\n",
" 'opencage': geopy.geocoders.opencage.OpenCage,\n",
" 'openmapquest': geopy.geocoders.openmapquest.OpenMapQuest,\n",
" 'pickpoint': geopy.geocoders.pickpoint.PickPoint,\n",
" 'pelias': geopy.geocoders.pelias.Pelias,\n",
" 'photon': geopy.geocoders.photon.Photon,\n",
" 'liveaddress': geopy.geocoders.smartystreets.LiveAddress,\n",
" 'tomtom': geopy.geocoders.tomtom.TomTom,\n",
" 'what3words': geopy.geocoders.what3words.What3Words,\n",
" 'yandex': geopy.geocoders.yandex.Yandex}"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import geopy\n",
"geopy.geocoders.SERVICE_TO_GEOCODER"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"These services vary in terms of accuracy, cost, and rate limits. Most want us to specify a `user_agent` so that the sites know a bit about who is using them. Let's try looking up Bascom Hall with the default:"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" geometry \n",
" address \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" POINT (-85.11864 30.92807) \n",
" Bascom, FL, United States \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" geometry address\n",
"0 POINT (-85.11864 30.92807) Bascom, FL, United States"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"geopandas.tools.geocode(\"Bascom Hall\", user_agent=\"cs320\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Oops, we want the Bascom Hall in Madison, WI, not the one in Florida."
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" geometry \n",
" address \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" POINT (-89.38326 43.04054) \n",
" Madison Town, WI, United States \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" geometry address\n",
"0 POINT (-89.38326 43.04054) Madison Town, WI, United States"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"geopandas.tools.geocode(\"Bascom Hall; Madison, WI\", user_agent=\"cs320\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Still not great. Let's use the \"nominatim\" provider (which uses OpenStreetMaps)."
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" geometry \n",
" address \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" POINT (-89.40434 43.07536) \n",
" Bascom Hall, 500, Lincoln Drive, Madison, Dane... \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" geometry \\\n",
"0 POINT (-89.40434 43.07536) \n",
"\n",
" address \n",
"0 Bascom Hall, 500, Lincoln Drive, Madison, Dane... "
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bascom = geopandas.tools.geocode(\"Bascom Hall; Madison, WI\", provider=\"nominatim\", user_agent=\"cs320\")\n",
"bascom"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Great, let's plot that on top of our lakes."
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ax = df2.plot(color=\"lightblue\")\n",
"bascom.plot(ax=ax, color=\"red\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Not good! The problem is that the two GeoDataFrames are using different coordinate systems."
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WGS 84 / UTM zone 16N\n",
"WGS 84\n"
]
}
],
"source": [
"print(df2.crs.name)\n",
"print(bascom.crs.name)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's convert bascom to the one df2 is using."
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WGS 84 / UTM zone 16N\n",
"WGS 84 / UTM zone 16N\n"
]
}
],
"source": [
"bascom2 = bascom.to_crs(df2.crs)\n",
"print(df2.crs.name)\n",
"print(bascom2.crs.name)"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ax = df2.plot(color=\"lightblue\")\n",
"bascom2.plot(ax=ax, color=\"red\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"What if we want a particular radius around a point, say 1km? Calling `.buffer` on a point (or a GeoSeries containing a point) creates a circle with a specified radius. Actually, there is no circle type in shapely, so you just get a very roundish polygon or line with many sides."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 POLYGON ((305261.748 4771989.622, 305256.933 4...\n",
"dtype: geometry"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bascom.to_crs(df2.crs).buffer(1000)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can add `.boundary` to the end of the above to get just a line around the circumference."
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 LINESTRING (305261.748 4771989.622, 305256.933...\n",
"dtype: geometry"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bascom.to_crs(df2.crs).buffer(1000).boundary"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ax = df2.plot(color=\"lightblue\")\n",
"bascom2.buffer(1000).boundary.plot(ax=ax, color=\"red\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Note that the order of (1) converting to a metric coordinate system and then (2) creating a buffer of a given radius is important. If we try it in the other order, geopandas will complain with good reason: 1 degree of latitude is generally not the same distance as 1 degree of longitude, so we'll get a weird oval."
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/tharter/.local/lib/python3.6/site-packages/ipykernel_launcher.py:2: UserWarning: Geometry is in a geographic CRS. Results from 'buffer' are likely incorrect. Use 'GeoSeries.to_crs()' to re-project geometries to a projected CRS before this operation.\n",
"\n",
" \n"
]
},
{
"data": {
"text/plain": [
""
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ax = df2.plot(color=\"lightblue\")\n",
"bascom.buffer(0.01).to_crs(df2.crs).boundary.plot(ax=ax, color=\"red\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Going back to the correct example, we can pass `label=\"...\"` and call `ax.legend()` if we want a legend for our annotations."
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 31,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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Wbx4MQ8++GB/z3fx4sUcfPDBBRHB1tZWNmzYwIMPPsjnPrc7meSpp56ad91DoUVQU1xMkBXFTJiWIuoMeePKImpa+N22uCULz/1/vI/bbruN733ve/z0pz9NW9fBBx88IDrK4sWLATj66KMH2C1evJiXX36ZXDjxxBPTzgHedNNN/PrXv2bjxo309vb2l69fb2fTME2TV155hQsvvHDA0H/lypUUKntjTU0N8+fP58ILL6SpqYlVq1ax1157FaTuodBzghpNgVBK0RNP9C+GQObe7B//+EcCgQBnn302ppXe1aWqqmrAa6/Xm7E8172z06dPH1R24403ct5553HkkUdy//338/LLL/Pii3ZG2756W1tbicfjNDQ0DHp/urKRICI88cQTLFu2jIsuuoiFCxcyf/58brrppoLUnwktghpNgYia1qDFnEwrr7fccgtLlixh9erVbPjg/THzjUzXnnvuuYdPfepTXHfddXz6059m+fLl1NfXD7Cpra3F4/H0r4Ank64sFb/fPyhu5K5duwbZzZ8/nzvuuIOWlhZef/11jjjiCM477zweffTRrOcYKVoENZoCYabx/cu0wl1eXs7jjz/O/PnzWbVqFeveS80qO3aEQiE8Hs+Asv/3//7fgNcul4vly5dz3333DVikeOmll9i0aVPWc8ydO5e33357QNnDDz+c0V5E2H///fn5z38OMOi9hUTPCWo0BUApxb333QfAm6//E4C/Pf44701rYHpDA4cffvig95SVlfHYY49x/PHHc8QRR/Dkk0+yZMmSMW03wDHHHMM111zDT37yE1asWMGTTz7Jfc61JHP55Zfz6U9/mhNPPJFzzz2XlpYWLr30UqZNm5b1HCeffDJf+cpX+O53v8tnPvMZ3nzzTW677bYBNmvXruX888/ny1/+MgsWLMA0TW677TbcbjdHHHFEoS53EFoENZoCcc5ppwx4/YPz/xWAww8/POMWstLSUh555BE++9nPsnr1av7+97+z7777jnZTB/DjH/+Yjo4Orr/+eiKRCIcffnh/LzWZI488krvuuovLLruML3zhCyxYsIAbbrhhwMpyJs466yy2bt3Kb37zG26++WYOPfRQHnjgARYsWNBvM23aNObMmcPPf/5zGhsb8fv9LF26lIceeoiDDjqo4NfdhxTD3sOxZNmyZerVV18d72ZMed577z32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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ax = df2.plot(color=\"lightblue\")\n",
"bascom2.buffer(1000).boundary.plot(ax=ax, color=\"red\", label=\"1km radius\")\n",
"bascom2.buffer(2000).boundary.plot(ax=ax, color=\"orange\", label=\"2km radius\")\n",
"ax.legend()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Geopandas lets use create intersections and unions of GeoDataFrames with `geopandas.overlay(????, ????, how='intersection')` and `geopandas.overlay(????, ????, how='union')`. If we put our circle around Bascom Hall in a GeoDataFrame with the same CRS as our lakes, we can identify/quantify all water within a 3km radius."
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 32,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ax = df2.plot(color=\"lightblue\")\n",
"bascom2.plot(ax=ax, color=\"red\", label=\"Bascom Hall\")\n",
"circle = geopandas.GeoDataFrame({\"geometry\": bascom2.buffer(3000)}, crs=df2.crs)\n",
"nearby_water = geopandas.overlay(circle, df2, how='intersection')\n",
"nearby_water.plot(ax=ax, color=\"blue\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Just asking for the area tells us the individual area of each piece:"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 5.640684e+04\n",
"1 4.348284e+03\n",
"2 1.535014e+03\n",
"3 2.907417e+06\n",
"4 9.419778e+06\n",
"5 6.626681e+03\n",
"6 7.762981e+03\n",
"7 3.973467e+03\n",
"8 1.108547e+06\n",
"dtype: float64"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"nearby_water.area"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We could sum those parts, or get the `unary_union`, which converts it all to a single shape a (`MultiPolygon`)."
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"There are 13.516395362225174 sq km of water within 3 km of Bascom Hall\n"
]
}
],
"source": [
"print(type(nearby_water.unary_union))\n",
"print(f\"There are {nearby_water.unary_union.area / 1e6} sq km of water within 3 km of Bascom Hall\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Conclusion\n",
"\n",
"geopandas gives us DataFrames where each row is a shape. We can use these like regular DataFrames, but we can also directly plot geographic maps. If we want a world map, we may want to use latitude/longitude, but converting to a meter-based coordinate system makes it easier to compute distances, areas, and radiuses around a point. GeoPandas makes it easy to intersect and union various shapes."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "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.7.2"
}
},
"nbformat": 4,
"nbformat_minor": 5
}