{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Retrieve a Snow Depth Spiral Centered a Pit\n", "\n", "**Goal**: Visualize a set of snow depths around a pit\n", "\n", "**Approach**: \n", "\n", "1. Retrieve the pit location from the Site Data table \n", "2. Build a circle around the pit location \n", "3. Request all the point data inside the circle \n", "4. Convert to a GeoDataFrame and plot\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Process\n", "### Step 1: Get the pit/site coordinates" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "from snowexsql.db import get_db\n", "from snowexsql.data import SiteData, PointData\n", "from snowexsql.conversions import points_to_geopandas\n", "import geoalchemy2.functions as gfunc\n", "import geopandas as gpd\n", "\n", "# Intense Observation Period Pit Site Identifier\n", "site_id = '5S31'\n", "\n", "# Distance around the pit to collect data in meters\n", "buffer_dist = 50\n", "\n", "# Connect to the database we made.\n", "db_name = 'db.snowexdata.org/snowex'\n", "\n", "engine, session = get_db(db_name, credentials='./credentials.json')\n", "\n", "# Grab our pit location by provided site id from the site details table\n", "q = session.query(SiteData).filter(SiteData.site_id == site_id)\n", "sites = q.all()\n", "\n", "# There can be different dates at a single site, so we only grab one to retrieve the geometry object\n", "point = session.query(sites[0].geom.ST_AsText()).limit(1).all()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 2: Build a buffered circle around our pit" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "# Create a polygon buffered by our distance centered on the pit\n", "q = session.query(gfunc.ST_Buffer(point[0][0], buffer_dist))\n", "buffered_pit = q.all()[0][0]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 3: Request all snow depths measured inside the circle" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "# Filter by the dataset type depth\n", "qry = session.query(PointData).filter(PointData.type == 'depth')\n", "\n", "# Grab all the point data in the buffer\n", "qry = qry.filter(gfunc.ST_Within(PointData.geom.ST_AsText(), buffered_pit.ST_AsText()))\n", "\n", "# Execute the query\n", "points = qry.all()\n", "\n", "# Close the session to avoid hanging transactions\n", "session.close()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 4: Convert the data to Geopandas Dataframe and plot it!" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "tags": [ "nbsphinx-gallery", "nbsphinx-thumbnail" ] }, "outputs": [ { "data": { "text/plain": [ "Text(68.6083306656794, 0.5, 'Northing [m]')" ] }, "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": [ "# Convert the records received to geopandas\n", "df = points_to_geopandas(points)\n", "\n", "# Get the Matplotlib Axes object from the dataframe object, color points by snow depth value\n", "ax = df.plot(column='value', legend=True, cmap='PuBu')\n", "\n", "# Use non-scientific notation for x and y ticks\n", "ax.ticklabel_format(style='plain', useOffset=False)\n", "\n", "# Set the various plots x/y labels and title.\n", "ax.set_title('Grand Mesa Snow Depths w/in {}m of site {}'.format(buffer_dist, site_id))\n", "ax.set_xlabel('Easting [m]')\n", "ax.set_ylabel('Northing [m]')" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.8.10" } }, "nbformat": 4, "nbformat_minor": 4 }