{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## SlideRule ATL06 Computation: Interactive Tutorial\n", "### IPython Widgets Example\n", "\n", "### Purpose\n", "Demonstrate common uses of the `ipysliderule` module" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Load necessary packages" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "tags": [] }, "outputs": [], "source": [ "import warnings\n", "warnings.filterwarnings('ignore') # turn off warnings for demo\n", "\n", "from sliderule import icesat2, ipysliderule, io, sliderule\n", "import geopandas\n", "import logging\n", "\n", "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Initiate SlideRule API\n", "- Sets the URL for accessing the SlideRule service\n", "- Builds a table of servers available for processing data" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "tags": [] }, "outputs": [], "source": [ "# set the url for the sliderule service\n", "# set the logging level\n", "icesat2.init(\"slideruleearth.io\", loglevel=logging.WARNING)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Set options for making science data processing requests to SlideRule\n", "\n", "SlideRule follows a streamlined version of the [ATL06 land ice height algorithm](https://nsidc.org/sites/nsidc.org/files/technical-references/ICESat2_ATL06_ATBD_r005.pdf).\n", "\n", "SlideRule also can use different sources for photon classification before calculating the average segment height. \n", "This is useful for example, in cases where there may be a vegetated canopy affecting the spread of the photon returns.\n", "- ATL03 photon confidence values, based on algorithm-specific classification types for land, ocean, sea-ice, land-ice, or inland water\n", "- [ATL08 Land and Vegetation Height product](https://nsidc.org/data/atl08) photon classification\n", "- Experimental YAPC (Yet Another Photon Classification) photon-density-based classification" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "tags": [] }, "outputs": [], "source": [ "# display widgets for setting SlideRule parameters\n", "SRwidgets = ipysliderule.widgets()\n", "SRwidgets.VBox(SRwidgets.atl06())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Interactive Mapping with Leaflet\n", "\n", "Interactive maps within the SlideRule python API are built upon [ipyleaflet](https://ipyleaflet.readthedocs.io).\n", "\n", "#### Leaflet Basemaps and Layers\n", "\n", "There are 3 projections available within SlideRule for mapping ([Global](https://epsg.io/3857), [North](https://epsg.io/5936) and [South](https://epsg.io/3031)). There are also contextual layers available for each projection.\n", "\n", "
| Global (Web Mercator, EPSG:3857) | \n", "North (Alaska Polar Stereographic, EPSG:5936) | \n", "South (Antarctic Polar Stereographic, EPSG:3031) | \n", "
|---|---|---|
\n",
"
| \n",
" \n",
"
| \n",
" \n", " \n", " | \n", "