{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "rZkCL3iGy3oL"
},
"source": [
"# **Interactive Viewer for GLORYS12V1 Ocean Potential Temperature and Other Variables** #"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For an interactive version of this page please visit the Google Colab: \n",
"[
Open in Google Colab ](https://colab.research.google.com/drive/1lOE-PQTt2f5lxJJWEsLP9CDxrEVBz_d2)
\n",
"(To open link in new tab press Ctrl + click)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Alternatively this notebook can be opened with Binder by following the link:\n",
"[Interactive Viewer for GLORYS12V1 Ocean Potential Temperature and Other Variables](https://mybinder.org/v2/gh/s4oceanice/literacy.s4oceanice/main?urlpath=%2Fdoc%2Ftree%2Fnotebooks_binder%2Foceanice_wms_bbox.ipynb)"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "lpHynVNozf3D"
},
"source": [
"**Purpose**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "ErOYbjMazg9o"
},
"source": [
"This notebook provides an interactive environment for exploring, visualizing and extracting subsets of ocean reanalysis data from the **GLORYS12V1 model** through the OCEAN ICE backend data tool.\n",
"\n",
"Users can:\n",
"\n",
"* Browse available variables, dates and depths.\n",
"\n",
"* Select an area of interest by clicking on a map or manually entering coordinates.\n",
"\n",
"* Retrieve and visualize selected data layers.\n",
"\n",
"* Compute summary statistics for the chosen area.\n",
"\n",
"* Download the subsetted dataset as a CSV file for offline analysis."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Bwthews3ziB1"
},
"source": [
"**Data sources**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "H-IYu9tTz7pG"
},
"source": [
"The data used in this notebook come from **GLORYS12V1**, a high-resolution **Global Ocean Reanalysis** product developed by the **Copernicus Marine Environment Monitoring Service (CMEMS)**.\n",
"\n",
"GLORYS12V1 is built by assimilating multiple streams of ocean observations into a global ocean general circulation model. These inputs include:\n",
"* In situ measurements from Argo floats, moorings and research cruises.\n",
"\n",
"* Satellite observations of sea surface temperature and sea level anomaly.\n",
"\n",
"* Ice concentration and drift data from polar observation systems.\n",
"\n",
"The result is a consistent, **3D representation of the global ocean over time**, providing key physical variables such as:\n",
"\n",
"* **Potential temperature (thetao)** — a temperature field corrected for pressure effects, allowing comparison between different depths.\n",
"\n",
"* **Practical salinity (so) **— a measure of dissolved salt concentration.\n",
"\n",
"* **Ocean current components (uo and vo)** — describing the east–west and north–south velocity.\n",
"\n",
"Spatial and temporal coverage:\n",
"\n",
"* Global coverage at 1/12° horizontal resolution (≈ 8 km).\n",
"\n",
"* Up to 50 vertical levels, from the surface to the seafloor.\n",
"\n",
"* Daily temporal resolution, spanning several decades (historical reanalysis and near-real-time updates).\n",
"\n",
"The data used in this Notebook are available at: https://er1.s4oceanice.eu/erddap/griddap/GLORYS12V1_sea_floor_potential_temp.html\n",
"\n",
"Beyond ERDAPP, two other services are additionaly used in this notebook:\n",
"\n",
"* **WMS (Web Map Service)** — for visualizing data layers on interactive maps.\n",
"\n",
"* **griddap** — for downloading raw numerical data in CSV format.\n",
"\n",
"The combination of these services enables both visual exploration and quantitative extraction of ocean state variables for any time, depth and region of interest."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "d-5-1LXvzszI"
},
"source": [
"**Instructions for using this Notebook**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "hujlun4sz3z4"
},
"source": [
"To interact with the notebook, run each code cell sequentially, You can do this by clicking the **Play button** (▶️) on the left side of each grey code block. Executing the cells in order ensure that all features and visualizations work properly."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "bS4gi73xzpD0"
},
"source": [
"**Explaining the code**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "QIYERagCr7kj"
},
"source": [
"**1. Importing required libraries & defining data sources**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "PDC5Vr9D0Og7"
},
"source": [
"This section imports all the Python libraries and Jupyter widgets required for interactive data visualization and map functionality.\n",
"\n",
"It also defines the ERDDAP WMS and griddap (CSV) data access URLs for the GLORYS12V1 potential temperature dataset."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "cef293b1"
},
"source": [
"The following libraries are used in this notebook:\n",
"\n",
"* **Data requests**: [xml.etree.ElementTree](https://docs.python.org/3/library/xml.etree.elementtree.html), [requests](https://docs.python-requests.org/en/latest/)\n",
"\n",
"* **Data handling**: [pandas](https://pandas.pydata.org/docs/), [io.BytesIO](https://docs.python.org/3/library/io.html#io.BytesIO)\n",
"\n",
"* **Visualization**: [ipyleaflet](https://ipyleaflet.readthedocs.io/en/latest/),\n",
"\n",
"* **Widget-based interactivity**: [ipywidgets](https://ipywidgets.readthedocs.io/en/latest/), [traitlets](https://traitlets.readthedocs.io/en/stable/)\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"id": "995d63a4"
},
"outputs": [],
"source": [
"# @title\n",
"import requests\n",
"import xml.etree.ElementTree as ET\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"from io import BytesIO\n",
"from traitlets import Unicode\n",
"from ipyleaflet import (\n",
" Map,\n",
" Marker,\n",
" basemaps,\n",
" projections,\n",
" WMSLayer,\n",
" Popup,\n",
" Icon,\n",
" AwesomeIcon,\n",
" ImageOverlay,\n",
")\n",
"from ipywidgets import (\n",
" IntSlider,\n",
" HBox,\n",
" Layout,\n",
" Output,\n",
" VBox,\n",
" HTML,\n",
" Label,\n",
" Dropdown,\n",
" Button,\n",
" FloatText\n",
")\n",
"from IPython.display import display, clear_output\n",
"\n",
"ERRDAP_SLA_URL = 'https://er1.s4oceanice.eu/erddap/wms/GLORYS12V1_sea_floor_potential_temp/request?service=WMS&request=GetCapabilities&version=1.3.0'\n",
"BASE_DATA_URL = 'https://er1.s4oceanice.eu/erddap/griddap/GLORYS12V1_sea_floor_potential_temp.csv?'"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "OWnHrYyNsBBv"
},
"source": [
"\n",
"**2. Retrieving WMS capabilities and parsing available layers**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "z7F90SOWnLRS"
},
"source": [
"This code block queries the ERDDAP WMS `GetCapabilities` endpoint to retrieve metadata about the dataset, inlcuding:\n",
"* **Time dimension** - available dates doe the dataset.\n",
"* **Elevation dimension** - depth levels.\n",
"* **Available data layers** - potential temperature, salinity and ocean currents components.\n",
"\n",
"The metadata elements are then stored for later use in the notebook's interactive visualization tools."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"id": "dbe649e0"
},
"outputs": [],
"source": [
"# @title\n",
"get_capabilities = requests.get(ERRDAP_SLA_URL)\n",
"\n",
"if get_capabilities.status_code == 200:\n",
" root = ET.fromstring(get_capabilities.content)\n",
"\n",
" for elem in root.findall(\".//{http://www.opengis.net/wms}Dimension\"):\n",
" if 'name' in elem.attrib and elem.attrib['name'] == 'time':\n",
" obs_dates = elem.text.strip().split(',')\n",
" elif 'name' in elem.attrib and elem.attrib['name'] == 'elevation':\n",
" obs_elev = elem.text.strip().split(',')\n",
" layers = {}\n",
" layers_to_display = []\n",
" layers_to_call = []\n",
" for name_tag in root.findall(\".//{http://www.opengis.net/wms}Name\"):\n",
" if name_tag.text and name_tag.text.startswith(\"GLORYS12V1\"):\n",
" if name_tag.text.endswith(\"thetao\"):\n",
" layers[name_tag.text] = 'Temperature'\n",
" elif name_tag.text.endswith(\"so\"):\n",
" layers[name_tag.text] = 'Salinity'\n",
" elif name_tag.text.endswith(\"uo\"):\n",
" layers[name_tag.text] = 'U-Velocity'\n",
" elif name_tag.text.endswith(\"vo\"):\n",
" layers[name_tag.text] = 'V-Velocity'\n",
" layers_to_display.append(name_tag.text)\n",
" # Populate layers_to_call with the part after the last colon\n",
" if ':' in name_tag.text:\n",
" layers_to_call.append(name_tag.text.split(':')[-1])\n",
" else:\n",
" layers_to_call.append(name_tag.text)\n",
"else:\n",
" print('ERROR: ', get_capabilities.status_code)"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "2Ffr21DMsORH"
},
"source": [
"\n",
"**3. Utility function for extracting layer type**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "QPGDaSBqpp-2"
},
"source": [
"This function extracts the variable name (layer type) from a full WMS layer identifier.\n",
"\n",
"WMS layers are often formatted as `datasetID:variableName`.\n",
"\n",
"The function isoates the text that follows the colon (`:`), which is the used in subsequent API calls."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"id": "d14af114"
},
"outputs": [],
"source": [
"# @title\n",
"def get_layer_type(selected_layer):\n",
" if selected_layer:\n",
" stop_char = ':'\n",
" res = ''\n",
" for c in reversed(selected_layer):\n",
" if c == stop_char:\n",
" break\n",
" res = c + res\n",
" return res\n",
" return None"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "gd2V7hIIsXbV"
},
"source": [
"\n",
"**4. Interactive map controls: time, depth and data layer selection**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "8jpx94qApef5"
},
"source": [
"This section creates interactive widgets that allow users to control the map visualization dynamically:\n",
"\n",
"* **Time slider** - selects the observation date from available time steps.\n",
"* **Depth slider** - selects the vertical level (elevation in meters)\n",
"* **Layer dropdown** - selects the oceanographic variable to display (e.g., potential temperature, salinity, eastward velocity, northward velocity).\n",
"\n",
"Whenever the user changes one of these selections, the function `update_wms_layer()` is called. This function:\n",
"\n",
"* Removes the previously displayed WMS layer from the map (if exists).\n",
"* Construct a new WMS request URL using the selected time, depth and variable.\n",
"* Adds the uploaded WMS layer to the interactive map.\n",
"* Calls `update_area_coordinates()` to refresh spatial information.\n",
"\n",
"This ensures that the displayed map always reflects the current user-selected parameters."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 145,
"referenced_widgets": [
"98520a5a7e264428ac2f78cd13c5d110",
"52830e0eb5b24b2f8a9775ddd0481997",
"899caa91c5eb42c192a453bbdae07755",
"9c40da9af7d043e48f96384ea4891476",
"cdbc109152a740569129da92604f79fa",
"c02dd69f503a493299509f133363445a",
"695cd052139747108c4bedf727ab5d9d",
"64665fc13b8a42d18fd763aa5b8b1015",
"516544f9507948dc98ce0dd6b03debc5",
"cc7c9a6af682497cb7a5da2949a94df2",
"494026d9b72d45aa84a72345b6dc0be6",
"4a168887025c4085aca5978eece4086c",
"c1a7e8c99e8e4d7d81c5a0d693091f9f",
"ec9b5d61d8224c808162307f7ba4e980",
"80550fbbcdab4225b339273101100a23",
"c62b87356bfc4ecb84e2a53580ba5bc1",
"9d5911bd721248e6b4cca40d4c144d0a",
"707e05a9d6674f428c15a676c11d9ccf",
"0031ca7565554720bf97c9fdee12310a",
"0618159250934072a39d89c79c5914c2",
"b06bb3f3159e4e8bb855ad21e2bb99cc",
"e5c856b54f424b39ac2431f597b9a834",
"1e1c9e60455e4a4aab4cf521e764e879",
"1c26addaa41544f1bc4878908152793a",
"b5eaacda35ae4a4fb05ad3accbaef457",
"a7c9f79245884de2bfc0bbf789d501b5",
"e95388d77cc547a097fa88c31717ac76",
"d276d1d76871419b905fe5e0ab7f577d",
"ac8f8ff7d9c1479c8e6f4dca91bff326",
"49b8b02f39ff4085ad5211e2abdec19e"
]
},
"id": "a3189d8e",
"outputId": "e739db78-59cd-4483-d2a2-ecc6128ceb52"
},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "98520a5a7e264428ac2f78cd13c5d110",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"HBox(children=(Label(value='Date: '), IntSlider(value=1, continuous_update=False, max=12, min=1, readout=False…"
]
},
"metadata": {
"application/vnd.jupyter.widget-view+json": {
"colab": {
"custom_widget_manager": {
"url": "https://ssl.gstatic.com/colaboratory-static/widgets/colab-cdn-widget-manager/2b70e893a8ba7c0f/manager.min.js"
}
}
}
},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "e5c856b54f424b39ac2431f597b9a834",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"HBox(children=(Label(value='Depth (m): '), IntSlider(value=1, continuous_update=False, max=50, min=1, readout=…"
]
},
"metadata": {
"application/vnd.jupyter.widget-view+json": {
"colab": {
"custom_widget_manager": {
"url": "https://ssl.gstatic.com/colaboratory-static/widgets/colab-cdn-widget-manager/2b70e893a8ba7c0f/manager.min.js"
}
}
}
},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "49b8b02f39ff4085ad5211e2abdec19e",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"VBox(children=(Label(value='Choose a layer to display on the map:'), Dropdown(description='Select Layer:', opt…"
]
},
"metadata": {
"application/vnd.jupyter.widget-view+json": {
"colab": {
"custom_widget_manager": {
"url": "https://ssl.gstatic.com/colaboratory-static/widgets/colab-cdn-widget-manager/2b70e893a8ba7c0f/manager.min.js"
}
}
}
},
"output_type": "display_data"
}
],
"source": [
"# @title\n",
"# Function to update the WMS layer\n",
"def update_wms_layer():\n",
" global m\n",
" global selected_time\n",
" global selected_elev\n",
" global selected_layer\n",
"\n",
" if not selected_time or not selected_elev or not selected_layer:\n",
" print(\"Cannot update WMS layer: time, elevation, or layer not selected.\")\n",
" return\n",
"\n",
" # Update the WMS layer on the map using the original selected_elev\n",
" new_wms_url = f'https://er1.s4oceanice.eu/erddap/wms/GLORYS12V1_sea_floor_potential_temp/request?&elevation={selected_elev}&time={selected_time}'\n",
" new_wms_layer_name = selected_layer\n",
"\n",
" # Find and remove the existing WMS layer based on URL and layers\n",
" existing_wms_layer = None\n",
" # Iterate over a copy of the list to avoid issues during removal\n",
" for layer in list(m.layers):\n",
" if isinstance(layer, WMSLayer):\n",
" # Check if the URL contains the base WMS service URL\n",
" if layer.url.startswith('https://er1.s4oceanice.eu/erddap/wms/GLORYS12V1_sea_floor_potential_temp/request?'):\n",
" existing_wms_layer = layer\n",
" break\n",
"\n",
" if existing_wms_layer:\n",
" m.remove_layer(existing_wms_layer)\n",
" # print(\"Removed existing WMS layer.\") # Debugging print\n",
"\n",
"\n",
" # Add the new WMS layer\n",
" new_wms_layer = WMSLayer(\n",
" url=new_wms_url,\n",
" layers=f'{new_wms_layer_name},Coastlines,Nations,States',\n",
" format='image/png',\n",
" transparent=True,\n",
" crs={'name': 'EPSG:4326'},\n",
" )\n",
" m.add_layer(new_wms_layer)\n",
" # Call update_area_coordinates after updating the WMS layer\n",
" update_area_coordinates()\n",
"\n",
"\n",
"# Time Slider\n",
"selected_time = obs_dates[0] if obs_dates else None\n",
"time_label = Label(value=str(selected_time))\n",
"\n",
"def updating_time_values(change):\n",
" global selected_time\n",
" # Ensure the index is within bounds\n",
" if obs_dates and 0 <= (change.new)-1 < len(obs_dates):\n",
" selected_time = obs_dates[(change.new)-1]\n",
" time_label.value = str(selected_time)\n",
" update_wms_layer() # Update WMS layer and data when time changes\n",
" else:\n",
" selected_time = None\n",
" time_label.value = \"Invalid Index or No Data\"\n",
"\n",
"\n",
"time_slider = IntSlider(min=1, max=len(obs_dates), readout = False, continuous_update=False) if obs_dates else Label(\"No time data available\")\n",
"if obs_dates:\n",
" time_slider.observe(updating_time_values, names='value')\n",
" display(HBox([Label('Date: '), time_slider, time_label]))\n",
"else:\n",
" display(time_slider)\n",
"\n",
"\n",
"# Elevation Slider\n",
"selected_elev = obs_elev[0] if obs_elev else None\n",
"elev_label = Label(value=str(selected_elev))\n",
"\n",
"def updating_elev_values(change):\n",
" global selected_elev\n",
" # Ensure the index is within bounds\n",
" if obs_elev and 0 <= (change.new)-1 < len(obs_elev):\n",
" selected_elev = obs_elev[(change.new)-1]\n",
" elev_label.value = str(selected_elev)\n",
" update_wms_layer() # Update WMS layer and data when elevation changes\n",
" else:\n",
" selected_elev = None\n",
" elev_label.value = \"Invalid Index or No Data\"\n",
"\n",
"\n",
"elev_slider = IntSlider(min=1, max=len(obs_elev), readout = False, continuous_update=False) if obs_elev else Label(\"No depth data available\")\n",
"if obs_elev:\n",
" elev_slider.observe(updating_elev_values, names='value')\n",
" display(HBox([Label('Depth (m): '), elev_slider, elev_label]))\n",
"else:\n",
" display(elev_slider)\n",
"\n",
"\n",
"# Layer Dropdown\n",
"layer_dropdown = Dropdown(\n",
" options=layers.values(),\n",
" description='Select Layer:',\n",
" disabled=False,\n",
")\n",
"\n",
"selected_layer = list(layers.keys())[list(layers.values()).index(layer_dropdown.value)] if layers else None\n",
"\n",
"def update_selected_layer(change):\n",
" global selected_layer\n",
" selected_value = change['new']\n",
" # Find the key corresponding to the selected value\n",
" selected_layer = list(layers.keys())[list(layers.values()).index(selected_value)]\n",
" update_wms_layer() # Update WMS layer and data when layer changes\n",
"\n",
"\n",
"layer_dropdown.observe(update_selected_layer, names='value')\n",
"\n",
"# Display the dropdown menu\n",
"display(VBox([Label('Choose a layer to display on the map:'), layer_dropdown]))\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "y-Iok49q_Yhd"
},
"source": [
"**5. Interactive map & area selection**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "6ZvUsK8doBEy"
},
"source": [
"TThis section generates an interactive world map, showing the selected WMS layer (based on time, depth and variable). User can define an **area of interest** in two ways:\n",
"* **By clicking on the map** - up to 4 markers can be placed, defining the corners of a polygonal area.\n",
"* **By manually entering coordinates** - users can specify minimum and maximum latitude/longitude values to define a rectangular area.\n",
"\n",
"Once four points are defined, the notebook automatically:\n",
"* Calculates **mean, maximum and minimum values** for the selected vairable within the area.\n",
"* Displays these values below the map.\n",
"* Generated a **download button** to export the full dataset for that area.\n",
"\n",
"Additional controls provided:\n",
"* Clear button - removes all markers and resets the input fields, re-enabling map clicking.\n",
"* Manual input fields - allow users to enter latitude/longitude ranges directly.\n",
"* Upload button - applies the manually entered coordinates.\n",
"\n",
"This ensure both flexible, user-friendly area selection and reproducible data extraction.\n",
"\n",
"**Note**: please be patient.\n",
"Placing the fourth marker may take longer to appear, especially for larger areas, due to Colab's processing limitations. Similarly, changing a value on the sliders or dropdowns may take a short time to update the displayed values and the download button."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 694,
"referenced_widgets": [
"9fed937f596f4f01af8626da3a9bf4d4",
"03c2d47adb564d14abee244cc6b9a473",
"417f0bbb5f9542a8900ce927d60f0e5a",
"ea33ae7035004e7eab6c609286d491e5",
"112f0bd148864375bfec407ec55395f0",
"7eea4a03879c494ea5207667556779d0",
"17f9c28504024965ba2a088745f32aed",
"e5faf58a23844be88a80f30a5025ed8e",
"d93577da54ae496c89fe0a8e52bc123e",
"9783f9a05efb412a907c1ca6d37bbe8b",
"375b9469f0d043a0a8c749ce4058ff27",
"69547380bd704ab08e68719c1abecab6",
"89a8222e317e4b1e8778ee146e509bd0",
"118943f724874f6190abc58c21042ec5",
"ef655a17db3f4003a6f9c23b056ef40b",
"4f69bcf36247467ca2d7a38a44fed2bf",
"5abdbd7387f347d085685641becfa99e",
"811b01ce12c743d2b6045bd0ee0b930d",
"2079052a01974bdda605fbaee36bef99",
"1bf2559ad54148699fee2b22656cedbe",
"c22f9d3ab70643aeba2f63ab62fc4bad",
"4e47b2f55a094994abfbbc4f5c4bdad4",
"e3e8f41f69b948099d3c3d1533c0083e",
"6e4b8345d482442db378b30187ff8e14",
"4740ed8eac204819aff9eb87fec414ec",
"25820e07f39a4fcdbd31c2b7ee66d9e6",
"7b7bb12e4d874e198039a25b25beb8a1",
"1a4939353204491bbc2fd6e142f5bb05",
"af4849a1fbdc49b885cd69ea7a8168d7",
"48b0cf690c29467b98bb0a1a2493ee7c",
"c04e78e227034f95b13aefb32a0c70ec",
"2520cca922e7437e9f64e7f01b8a986c",
"7f09f3f0fa5f4b9caf5e2f31babe5e7e",
"5e0bb37278e24ecf9c46adf78f3e6d65",
"98dc9ceeb02c438e905ae7b187d1bf79",
"675aac1d07d34681ba4c6031952e2af1",
"fe37746638f349709ee598508202d2cb",
"0f240c267c87448782528ed6fc2ce1fa",
"7b94154922c04c94800cb2fdae7efa86",
"5b7f65a5a1d042e0b86dca364250a370",
"06dc8e08670a4479975bfcdac9c25217",
"b9d2c1eca4564c9292d97ab5e0d63c7f",
"d3d180ce24cf440fb490411a9e118dfd",
"391007824bfb48c586d4772e7ec99227",
"f2819fd865b94220b8fcc7b2a16d036a",
"01450e448a934f739d26705861b7490c",
"3cf621db9a964f2598dbc1f6bf2119f1",
"0268392adf38404b9189bb756e92ec4e",
"9b156652759a48fca626c5402091ed1c",
"65f4a625c6944d43a93b842073cef1a9"
]
},
"id": "1d8a8d54",
"outputId": "c68c45fa-8358-4f1b-84a0-eaa51b6c4e8f"
},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "9fed937f596f4f01af8626da3a9bf4d4",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"VBox(children=(Button(description='Clear inputs', style=ButtonStyle()), VBox(children=(Label(value='Enter area…"
]
},
"metadata": {
"application/vnd.jupyter.widget-view+json": {
"colab": {
"custom_widget_manager": {
"url": "https://ssl.gstatic.com/colaboratory-static/widgets/colab-cdn-widget-manager/2b70e893a8ba7c0f/manager.min.js"
}
}
}
},
"output_type": "display_data"
}
],
"source": [
"# @title\n",
"# Map Generator\n",
"m = Map(\n",
" center=(0, 0),\n",
" zoom=1,\n",
" basemap = basemaps.Esri,\n",
" layout=Layout(width='80%', height='500px', margin='10px 0 0 0'),\n",
" crs = projections.EPSG4326,\n",
")\n",
"\n",
"# Output widget to display coordinates\n",
"output = Output()\n",
"\n",
"# Output widget specifically for the DataFrame and plot\n",
"data_output = Output()\n",
"plot_output = Output(layout=Layout(width='80%', height='500px', margin='10px 0 0 0'))\n",
"\n",
"coordinates_list = [] # List to store coordinates of up to 4 markers\n",
"markers_list = [] # List to store the marker objects\n",
"manual_input_mode = False # Flag to indicate if manual input is active\n",
"\n",
"def handle_map_click(**kwargs):\n",
" global coordinates_list\n",
" global markers_list\n",
" global manual_input_mode\n",
"\n",
" if not manual_input_mode and kwargs.get('type') == 'click':\n",
" new_coordinates = kwargs.get('coordinates')\n",
"\n",
" if len(coordinates_list) < 4:\n",
" coordinates_list.append(new_coordinates)\n",
" with output:\n",
" clear_output()\n",
" print(f\"Selected coordinates ({len(coordinates_list)}/4): {new_coordinates}\")\n",
"\n",
" update_area_coordinates() # Update area coordinates after adding a marker\n",
"\n",
" # Add a new marker at the clicked location\n",
" new_marker = Marker(location=new_coordinates)\n",
" m.add_layer(new_marker)\n",
" markers_list.append(new_marker)\n",
"\n",
" # If this is the first marker, update the data display\n",
" if len(coordinates_list) == 1:\n",
"\n",
" global coordinates # Keep the global coordinates variable for now, linked to the first marker\n",
" coordinates = coordinates_list[0]\n",
"\n",
" # If 4 markers have been placed, detach the click handler\n",
" if len(coordinates_list) == 4:\n",
" m.on_interaction(handle_map_click, remove=True)\n",
" with output:\n",
" print(\"Maximum number of markers reached. Map clicking is disabled.\")\n",
"\n",
"\n",
" else:\n",
" with output:\n",
" clear_output()\n",
" print(\"Maximum of 4 locations already selected.\")\n",
"\n",
" update_area_coordinates() # Update area coordinates even if max markers reached (to show the message)\n",
"\n",
"\n",
"m.on_interaction(handle_map_click)\n",
"\n",
"# This initial layer will be replaced when update_data is called by interacting with widgets/map\n",
"if layers and obs_dates and obs_elev:\n",
" initial_wms = WMSLayer(\n",
" url=f'https://er1.s4oceanice.eu/erddap/wms/GLORYS12V1_sea_floor_potential_temp/request?&elevation={selected_elev}&time={selected_time}',\n",
" layers=f'{selected_layer},Coastlines,Nations,States',\n",
" format='image/png',\n",
" transparent=True,\n",
" crs={'name': 'EPSG:4326'},\n",
" )\n",
" m.add(initial_wms)\n",
"\n",
"# Function to clear markers and manual inputs\n",
"def clear_markers(b=None): # Added default argument for button click\n",
" global coordinates_list\n",
" global markers_list\n",
" global manual_input_mode\n",
"\n",
" for marker in markers_list:\n",
" m.remove_layer(marker)\n",
" markers_list = []\n",
" coordinates_list = []\n",
" # Also clear manual input fields\n",
" min_lat_input.value = 0.0\n",
" max_lat_input.value = 0.0\n",
" min_lon_input.value = 0.0\n",
" max_lon_input.value = 0.0\n",
"\n",
"\n",
" with output:\n",
" clear_output()\n",
" print(\"All markers and manual inputs cleared.\")\n",
" update_area_coordinates() # Update area coordinates after clearing markers\n",
" # Re-attach the click handler after clearing markers\n",
" m.on_interaction(handle_map_click)\n",
" with output:\n",
" print(\"Map clicking is re-enabled.\")\n",
" # Optionally clear data output and plot when markers are cleared\n",
" with data_output:\n",
" clear_output(wait=True)\n",
" print(\"\") # Empty the values list under the map\n",
" with plot_output:\n",
" clear_output(wait=True)\n",
" manual_input_mode = False # Reset manual input mode\n",
"\n",
"clear_button = Button(description='Clear inputs')\n",
"clear_button.on_click(clear_markers)\n",
"\n",
"# Create input textboxes for manual coordinates (min/max lat/lon)\n",
"min_lat_input = FloatText(description='Min Lat:')\n",
"max_lat_input = FloatText(description='Max Lat:')\n",
"min_lon_input = FloatText(description='Min Lon:')\n",
"max_lon_input = FloatText(description='Max Lon:')\n",
"\n",
"\n",
"# Button to use manual coordinates\n",
"use_manual_button = Button(description='Upload coordinates')\n",
"\n",
"def use_manual_coordinates(b):\n",
" global coordinates_list\n",
" global markers_list\n",
" global manual_input_mode\n",
"\n",
" manual_input_mode = True # Set manual input mode to True\n",
"\n",
" # Clear existing markers from map clicks\n",
" for marker in markers_list:\n",
" m.remove_layer(marker)\n",
" markers_list = []\n",
" coordinates_list = [] # Clear coordinates from map clicks\n",
"\n",
" try:\n",
" # Get coordinates from input fields\n",
" min_lat = min_lat_input.value\n",
" max_lat = max_lat_input.value\n",
" min_lon = min_lon_input.value\n",
" max_lon = max_lon_input.value\n",
"\n",
" # Validate coordinates (basic validation: check if not None and within a reasonable range)\n",
" if isinstance(min_lat, (int, float)) and isinstance(max_lat, (int, float)) and isinstance(min_lon, (int, float)) and isinstance(max_lon, (int, float)) and \\\n",
" -90 <= min_lat <= 90 and -90 <= max_lat <= 90 and -180 <= min_lon <= 180 and -180 <= max_lon <= 180 and \\\n",
" min_lat <= max_lat and min_lon <= max_lon:\n",
"\n",
" # Define the 4 corner coordinates based on min/max lat/lon\n",
" coordinates_list = [\n",
" (min_lat, min_lon),\n",
" (min_lat, max_lon),\n",
" (max_lat, max_lon),\n",
" (max_lat, min_lon)\n",
" ]\n",
"\n",
" with output:\n",
" clear_output()\n",
" print(\"Using manually entered coordinates for the area:\")\n",
" print(f\" Min Lat: {min_lat}, Max Lat: {max_lat}, Min Lon: {min_lon}, Max Lon: {max_lon}\")\n",
"\n",
"\n",
" # Add markers for manually entered coordinates (optional, but good for visualization)\n",
" for lat, lon in coordinates_list:\n",
" new_marker = Marker(location=(lat, lon))\n",
" m.add_layer(new_marker)\n",
" markers_list.append(new_marker)\n",
"\n",
" update_area_coordinates() # Update area coordinates using manual input\n",
" else:\n",
" with output:\n",
" clear_output()\n",
" print(\"Invalid coordinate input. Please enter valid numbers between -90 and 90 for latitude and -180 and 180 for longitude, ensuring Min Lat <= Max Lat and Min Lon <= Max Lon.\")\n",
" manual_input_mode = False # Reset manual input mode on invalid input\n",
"\n",
"\n",
" except Exception as e:\n",
" with output:\n",
" clear_output()\n",
" print(f\"Error processing manual input: {e}\")\n",
" manual_input_mode = False # Reset manual input mode on error\n",
"\n",
"\n",
"use_manual_button.on_click(use_manual_coordinates)\n",
"\n",
"\n",
"# Create a download button widget, initially hidden\n",
"download_button = HTML(value='', layout=Layout(visibility='hidden'))\n",
"\n",
"# Arrange the clear button, output, map, data output, and download button vertically in a VBox\n",
"display(VBox([clear_button,\n",
" VBox([Label(\"Enter area coordinates manually or click on the map to automatically select coordinates:\"),\n",
" HBox([min_lat_input, max_lat_input]),\n",
" HBox([min_lon_input, max_lon_input]),\n",
" HBox([use_manual_button, Label('Use this button once you entered coordinates manually')])]),\n",
" output,\n",
" m,\n",
" data_output,\n",
" download_button]))"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Kjl06Ln__dFY"
},
"source": [
"**6. Extracting, summarizing and downloading data for the selected area**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "IW2xpLSN9yxw"
},
"source": [
"This section processes the spatial selection made by the user in the section above (either via map clicks or manual coordinate input) and after determining the bounding box (minimum/maximum latitude and longitude), builds an ERDDAP API request URL to extract the relevant dataset subset based on:\n",
"\n",
"* Selected variable (e.g., potential temperature, salinity, velocity).\n",
"* Chosen depth level.\n",
"* Chosen date/time.\n",
"* Selected geographic bounds.\n",
"\n",
"After this, it fetches and processes the data to compute key descriptive statistics (i.e. Mean, Maximum, Minimum, Standard deviation) and displays them along with the variable descriptions.\n",
"\n",
"Finally, it generates a clickable link for downloading the subsetted data in CSV format."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"id": "8b495373"
},
"outputs": [],
"source": [
"# @title\n",
"# The download_button is now created and displayed in cell 1d8a8d54\n",
"# This cell will only update its content and visibility\n",
"\n",
"def update_area_coordinates():\n",
"\n",
" if len(coordinates_list) == 4:\n",
" # Extract latitudes and longitudes\n",
" latitudes = [coord[0] for coord in coordinates_list]\n",
" longitudes = [coord[1] for coord in coordinates_list]\n",
"\n",
" # Find min and max latitude and longitude\n",
" min_latitude = min(latitudes)\n",
" max_latitude = max(latitudes)\n",
" min_longitude = min(longitudes)\n",
" max_longitude = max(longitudes)\n",
"\n",
" with output: # Display in the output widget\n",
" clear_output()\n",
" print(f\"Area coordinates:\")\n",
" print(f\" Min Latitude: {min_latitude}\")\n",
" print(f\" Max Latitude: {max_latitude}\")\n",
" print(f\" Min Longitude: {max_longitude}\")\n",
" print(f\" Max Longitude: {min_longitude}\")\n",
"\n",
" layer_type = get_layer_type(selected_layer)\n",
"\n",
" try:\n",
" elev_for_data_api = abs(float(selected_elev))\n",
" except ValueError:\n",
" with data_output:\n",
" clear_output(wait=True)\n",
" print(f\"Error: Could not convert elevation '{selected_elev}' to a number for the data API call.\")\n",
" return # Exit the function if conversion fails\n",
"\n",
" api_url = f'{BASE_DATA_URL}{layer_type}%5B({selected_time}):1:({selected_time})%5D%5B({elev_for_data_api}):1:({elev_for_data_api})%5D%5B({min_latitude}):1:({max_latitude})%5D%5B({min_longitude}):1:({max_longitude})%5D'\n",
" #print(api_url) # Optional: print API URL for debugging\n",
" try:\n",
" # Read the CSV including the first row to get the description\n",
" full_df = pd.read_csv(api_url)\n",
" # Get the description from the first row, last column\n",
" variable_description = full_df.iloc[0, -1]\n",
" # Read the CSV again, skipping the first row for data calculation\n",
" df = pd.read_csv(api_url, skiprows=[1])\n",
"\n",
"\n",
" with data_output:\n",
" clear_output(wait=True)\n",
" if not df.empty:\n",
" # Assuming the last column contains the variable of interest\n",
" variable_data = df.iloc[:, -1]\n",
" mean_value = variable_data.mean()\n",
" max_value = variable_data.max()\n",
" min_value = variable_data.min()\n",
" std_value = variable_data.std()\n",
"\n",
" # Display the statistics as a simple list with the description after the value\n",
" print(f\"Statistics for the selected area:\")\n",
" print(f\" Mean: {mean_value:.2f} ({variable_description})\")\n",
" print(f\" Max: {max_value:.2f} ({variable_description})\")\n",
" print(f\" Min: {min_value:.2f} ({variable_description})\")\n",
" print(f\" Standard Deviation: {std_value:.2f} ({variable_description})\") # Display standard deviation\n",
"\n",
"\n",
" else:\n",
" print(\"No data available for the selected area and parameters.\")\n",
"\n",
" download_button.value = f'Click here to download data (CSV)'\n",
" download_button.layout.visibility = 'visible'\n",
"\n",
" except Exception as e:\n",
" with output:\n",
" print(f'ERROR fetching data: {e}')\n",
" # Hide the download button if there's an error\n",
" download_button.layout.visibility = 'hidden'\n",
" with data_output:\n",
" clear_output(wait=True)\n",
"\n",
" else:\n",
" with output: # Display in the output widget\n",
" clear_output()\n",
" print(f\"Please place exactly 4 markers on the map to define the area.\")\n",
" # Hide the download button if not 4 markers are placed\n",
" # Ensure the download_button variable is accessible\n",
" download_button.layout.visibility = 'hidden'\n",
" with data_output:\n",
" clear_output(wait=True)"
]
}
],
"metadata": {
"colab": {
"provenance": []
},
"kernelspec": {
"display_name": "Python 3",
"name": "python3"
},
"language_info": {
"name": "python"
},
"widgets": {
"application/vnd.jupyter.widget-state+json": {
"0031ca7565554720bf97c9fdee12310a": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "IntSliderModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "IntSliderModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "IntSliderView",
"continuous_update": false,
"description": "",
"description_tooltip": null,
"disabled": false,
"layout": "IPY_MODEL_ec9b5d61d8224c808162307f7ba4e980",
"max": 50,
"min": 1,
"orientation": "horizontal",
"readout": false,
"readout_format": "d",
"step": 1,
"style": "IPY_MODEL_80550fbbcdab4225b339273101100a23",
"value": 1
}
},
"01450e448a934f739d26705861b7490c": {
"model_module": "jupyter-leaflet",
"model_module_version": "^0.20",
"model_name": "LeafletMapStyleModel",
"state": {
"_model_module": "jupyter-leaflet",
"_model_module_version": "^0.20",
"_model_name": "LeafletMapStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"cursor": "move"
}
},
"0268392adf38404b9189bb756e92ec4e": {
"model_module": "jupyter-leaflet",
"model_module_version": "^0.20",
"model_name": "LeafletWMSLayerModel",
"state": {
"_model_module": "jupyter-leaflet",
"_model_module_version": "^0.20",
"_model_name": "LeafletWMSLayerModel",
"_view_count": null,
"_view_module": "jupyter-leaflet",
"_view_module_version": "^0.20",
"_view_name": "LeafletWMSLayerView",
"attribution": null,
"base": false,
"bottom": true,
"bounds": null,
"crs": {
"name": "EPSG:4326"
},
"detect_retina": false,
"format": "image/png",
"layers": "GLORYS12V1_sea_floor_potential_temp:thetao,Coastlines,Nations,States",
"loading": false,
"max_native_zoom": null,
"max_zoom": 18,
"min_native_zoom": null,
"min_zoom": 0,
"name": "",
"no_wrap": false,
"opacity": 1,
"options": [
"attribution",
"bounds",
"detect_retina",
"format",
"layers",
"max_native_zoom",
"max_zoom",
"min_native_zoom",
"min_zoom",
"no_wrap",
"pm_ignore",
"styles",
"tile_size",
"tms",
"transparent",
"uppercase",
"zoom_offset"
],
"pane": "",
"pm_ignore": true,
"popup": null,
"popup_max_height": null,
"popup_max_width": 300,
"popup_min_width": 50,
"show_loading": false,
"snap_ignore": true,
"styles": "",
"subitems": [],
"tile_size": 256,
"tms": false,
"transparent": true,
"uppercase": false,
"url": "https://er1.s4oceanice.eu/erddap/wms/GLORYS12V1_sea_floor_potential_temp/request?&elevation=-0.494025&time=1993-01-16T12:00:00Z",
"visible": true,
"zoom_offset": 0
}
},
"03c2d47adb564d14abee244cc6b9a473": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "ButtonModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "ButtonModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "ButtonView",
"button_style": "",
"description": "Clear inputs",
"disabled": false,
"icon": "",
"layout": "IPY_MODEL_d93577da54ae496c89fe0a8e52bc123e",
"style": "IPY_MODEL_9783f9a05efb412a907c1ca6d37bbe8b",
"tooltip": ""
}
},
"0618159250934072a39d89c79c5914c2": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "LabelModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "LabelModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "LabelView",
"description": "",
"description_tooltip": null,
"layout": "IPY_MODEL_4a168887025c4085aca5978eece4086c",
"placeholder": "",
"style": "IPY_MODEL_c1a7e8c99e8e4d7d81c5a0d693091f9f",
"value": "-0.494025"
}
},
"06dc8e08670a4479975bfcdac9c25217": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"0f240c267c87448782528ed6fc2ce1fa": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"112f0bd148864375bfec407ec55395f0": {
"model_module": "jupyter-leaflet",
"model_module_version": "^0.20",
"model_name": "LeafletMapModel",
"state": {
"_dom_classes": [],
"_model_module": "jupyter-leaflet",
"_model_module_version": "^0.20",
"_model_name": "LeafletMapModel",
"_view_count": null,
"_view_module": "jupyter-leaflet",
"_view_module_version": "^0.20",
"_view_name": "LeafletMapView",
"bottom": 506,
"bounce_at_zoom_limits": true,
"box_zoom": true,
"center": [
0,
0
],
"close_popup_on_click": true,
"controls": [
"IPY_MODEL_d3d180ce24cf440fb490411a9e118dfd",
"IPY_MODEL_391007824bfb48c586d4772e7ec99227"
],
"crs": {
"custom": false,
"name": "EPSG4326"
},
"default_style": "IPY_MODEL_f2819fd865b94220b8fcc7b2a16d036a",
"double_click_zoom": true,
"dragging": true,
"dragging_style": "IPY_MODEL_01450e448a934f739d26705861b7490c",
"east": 181.0546875,
"fullscreen": false,
"inertia": true,
"inertia_deceleration": 3000,
"inertia_max_speed": 1500,
"interpolation": "bilinear",
"keyboard": true,
"keyboard_pan_offset": 80,
"keyboard_zoom_offset": 1,
"layers": [
"IPY_MODEL_3cf621db9a964f2598dbc1f6bf2119f1",
"IPY_MODEL_0268392adf38404b9189bb756e92ec4e"
],
"layout": "IPY_MODEL_9b156652759a48fca626c5402091ed1c",
"left": -2,
"max_zoom": null,
"min_zoom": null,
"modisdate": "2025-08-13",
"north": 87.890625,
"options": [
"bounce_at_zoom_limits",
"box_zoom",
"center",
"close_popup_on_click",
"double_click_zoom",
"dragging",
"fullscreen",
"inertia",
"inertia_deceleration",
"inertia_max_speed",
"interpolation",
"keyboard",
"keyboard_pan_offset",
"keyboard_zoom_offset",
"max_zoom",
"min_zoom",
"prefer_canvas",
"scroll_wheel_zoom",
"tap",
"tap_tolerance",
"touch_zoom",
"world_copy_jump",
"zoom",
"zoom_animation_threshold",
"zoom_delta",
"zoom_snap"
],
"panes": {},
"prefer_canvas": false,
"right": 1027,
"scroll_wheel_zoom": false,
"south": -87.890625,
"style": "IPY_MODEL_65f4a625c6944d43a93b842073cef1a9",
"tap": true,
"tap_tolerance": 15,
"top": 6,
"touch_zoom": true,
"west": -180.703125,
"window_url": "https://jvzerozx1fo-496ff2e9c6d22116-0-colab.googleusercontent.com/outputframe.html?vrz=colab_20250808-060057_RC01_792725924",
"world_copy_jump": false,
"zoom": 1,
"zoom_animation_threshold": 4,
"zoom_delta": 1,
"zoom_snap": 1
}
},
"118943f724874f6190abc58c21042ec5": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "HBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "HBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "HBoxView",
"box_style": "",
"children": [
"IPY_MODEL_1a4939353204491bbc2fd6e142f5bb05",
"IPY_MODEL_af4849a1fbdc49b885cd69ea7a8168d7"
],
"layout": "IPY_MODEL_48b0cf690c29467b98bb0a1a2493ee7c"
}
},
"17f9c28504024965ba2a088745f32aed": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "HTMLModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "HTMLModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "HTMLView",
"description": "",
"description_tooltip": null,
"layout": "IPY_MODEL_811b01ce12c743d2b6045bd0ee0b930d",
"placeholder": "",
"style": "IPY_MODEL_2079052a01974bdda605fbaee36bef99",
"value": ""
}
},
"1a4939353204491bbc2fd6e142f5bb05": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "ButtonModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "ButtonModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "ButtonView",
"button_style": "",
"description": "Upload coordinates",
"disabled": false,
"icon": "",
"layout": "IPY_MODEL_7b94154922c04c94800cb2fdae7efa86",
"style": "IPY_MODEL_5b7f65a5a1d042e0b86dca364250a370",
"tooltip": ""
}
},
"1bf2559ad54148699fee2b22656cedbe": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"1c26addaa41544f1bc4878908152793a": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"1e1c9e60455e4a4aab4cf521e764e879": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"2079052a01974bdda605fbaee36bef99": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"2520cca922e7437e9f64e7f01b8a986c": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"25820e07f39a4fcdbd31c2b7ee66d9e6": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "FloatTextModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "FloatTextModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "FloatTextView",
"continuous_update": false,
"description": "Max Lon:",
"description_tooltip": null,
"disabled": false,
"layout": "IPY_MODEL_fe37746638f349709ee598508202d2cb",
"step": null,
"style": "IPY_MODEL_0f240c267c87448782528ed6fc2ce1fa",
"value": 0
}
},
"375b9469f0d043a0a8c749ce4058ff27": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "LabelModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "LabelModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "LabelView",
"description": "",
"description_tooltip": null,
"layout": "IPY_MODEL_1bf2559ad54148699fee2b22656cedbe",
"placeholder": "",
"style": "IPY_MODEL_c22f9d3ab70643aeba2f63ab62fc4bad",
"value": "Enter area coordinates manually or click on the map to automatically select coordinates:"
}
},
"391007824bfb48c586d4772e7ec99227": {
"model_module": "jupyter-leaflet",
"model_module_version": "^0.20",
"model_name": "LeafletAttributionControlModel",
"state": {
"_model_module": "jupyter-leaflet",
"_model_module_version": "^0.20",
"_model_name": "LeafletAttributionControlModel",
"_view_count": null,
"_view_module": "jupyter-leaflet",
"_view_module_version": "^0.20",
"_view_name": "LeafletAttributionControlView",
"options": [
"position",
"prefix"
],
"position": "bottomright",
"prefix": "ipyleaflet"
}
},
"3cf621db9a964f2598dbc1f6bf2119f1": {
"model_module": "jupyter-leaflet",
"model_module_version": "^0.20",
"model_name": "LeafletTileLayerModel",
"state": {
"_model_module": "jupyter-leaflet",
"_model_module_version": "^0.20",
"_model_name": "LeafletTileLayerModel",
"_view_count": null,
"_view_module": "jupyter-leaflet",
"_view_module_version": "^0.20",
"_view_name": "LeafletTileLayerView",
"attribution": "",
"base": true,
"bottom": true,
"bounds": null,
"detect_retina": false,
"loading": false,
"max_native_zoom": null,
"max_zoom": 18,
"min_native_zoom": null,
"min_zoom": 1,
"name": "",
"no_wrap": false,
"opacity": 1,
"options": [
"attribution",
"bounds",
"detect_retina",
"max_native_zoom",
"max_zoom",
"min_native_zoom",
"min_zoom",
"no_wrap",
"pm_ignore",
"tile_size",
"tms",
"zoom_offset"
],
"pane": "",
"pm_ignore": true,
"popup": null,
"popup_max_height": null,
"popup_max_width": 300,
"popup_min_width": 50,
"show_loading": false,
"snap_ignore": true,
"subitems": [],
"tile_size": 256,
"tms": false,
"url": "",
"visible": true,
"zoom_offset": 0
}
},
"417f0bbb5f9542a8900ce927d60f0e5a": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "VBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "VBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "VBoxView",
"box_style": "",
"children": [
"IPY_MODEL_375b9469f0d043a0a8c749ce4058ff27",
"IPY_MODEL_69547380bd704ab08e68719c1abecab6",
"IPY_MODEL_89a8222e317e4b1e8778ee146e509bd0",
"IPY_MODEL_118943f724874f6190abc58c21042ec5"
],
"layout": "IPY_MODEL_ef655a17db3f4003a6f9c23b056ef40b"
}
},
"4740ed8eac204819aff9eb87fec414ec": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "FloatTextModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "FloatTextModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "FloatTextView",
"continuous_update": false,
"description": "Min Lon:",
"description_tooltip": null,
"disabled": false,
"layout": "IPY_MODEL_98dc9ceeb02c438e905ae7b187d1bf79",
"step": null,
"style": "IPY_MODEL_675aac1d07d34681ba4c6031952e2af1",
"value": 0
}
},
"48b0cf690c29467b98bb0a1a2493ee7c": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"494026d9b72d45aa84a72345b6dc0be6": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"49b8b02f39ff4085ad5211e2abdec19e": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "VBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "VBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "VBoxView",
"box_style": "",
"children": [
"IPY_MODEL_e95388d77cc547a097fa88c31717ac76",
"IPY_MODEL_d276d1d76871419b905fe5e0ab7f577d"
],
"layout": "IPY_MODEL_ac8f8ff7d9c1479c8e6f4dca91bff326"
}
},
"4a168887025c4085aca5978eece4086c": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"4e47b2f55a094994abfbbc4f5c4bdad4": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "FloatTextModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "FloatTextModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "FloatTextView",
"continuous_update": false,
"description": "Min Lat:",
"description_tooltip": null,
"disabled": false,
"layout": "IPY_MODEL_c04e78e227034f95b13aefb32a0c70ec",
"step": null,
"style": "IPY_MODEL_2520cca922e7437e9f64e7f01b8a986c",
"value": 0
}
},
"4f69bcf36247467ca2d7a38a44fed2bf": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"516544f9507948dc98ce0dd6b03debc5": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "SliderStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "SliderStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": "",
"handle_color": null
}
},
"52830e0eb5b24b2f8a9775ddd0481997": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "LabelModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "LabelModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "LabelView",
"description": "",
"description_tooltip": null,
"layout": "IPY_MODEL_c02dd69f503a493299509f133363445a",
"placeholder": "",
"style": "IPY_MODEL_695cd052139747108c4bedf727ab5d9d",
"value": "Date: "
}
},
"5abdbd7387f347d085685641becfa99e": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"5b7f65a5a1d042e0b86dca364250a370": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "ButtonStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "ButtonStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"button_color": null,
"font_weight": ""
}
},
"5e0bb37278e24ecf9c46adf78f3e6d65": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"64665fc13b8a42d18fd763aa5b8b1015": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"65f4a625c6944d43a93b842073cef1a9": {
"model_module": "jupyter-leaflet",
"model_module_version": "^0.20",
"model_name": "LeafletMapStyleModel",
"state": {
"_model_module": "jupyter-leaflet",
"_model_module_version": "^0.20",
"_model_name": "LeafletMapStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"cursor": "grab"
}
},
"675aac1d07d34681ba4c6031952e2af1": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"69547380bd704ab08e68719c1abecab6": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "HBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "HBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "HBoxView",
"box_style": "",
"children": [
"IPY_MODEL_4e47b2f55a094994abfbbc4f5c4bdad4",
"IPY_MODEL_e3e8f41f69b948099d3c3d1533c0083e"
],
"layout": "IPY_MODEL_6e4b8345d482442db378b30187ff8e14"
}
},
"695cd052139747108c4bedf727ab5d9d": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"6e4b8345d482442db378b30187ff8e14": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"707e05a9d6674f428c15a676c11d9ccf": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "LabelModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "LabelModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "LabelView",
"description": "",
"description_tooltip": null,
"layout": "IPY_MODEL_c62b87356bfc4ecb84e2a53580ba5bc1",
"placeholder": "",
"style": "IPY_MODEL_9d5911bd721248e6b4cca40d4c144d0a",
"value": "Depth (m): "
}
},
"7b7bb12e4d874e198039a25b25beb8a1": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"7b94154922c04c94800cb2fdae7efa86": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"7eea4a03879c494ea5207667556779d0": {
"model_module": "@jupyter-widgets/output",
"model_module_version": "1.0.0",
"model_name": "OutputModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/output",
"_model_module_version": "1.0.0",
"_model_name": "OutputModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/output",
"_view_module_version": "1.0.0",
"_view_name": "OutputView",
"layout": "IPY_MODEL_5abdbd7387f347d085685641becfa99e",
"msg_id": "",
"outputs": []
}
},
"7f09f3f0fa5f4b9caf5e2f31babe5e7e": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"80550fbbcdab4225b339273101100a23": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "SliderStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "SliderStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": "",
"handle_color": null
}
},
"811b01ce12c743d2b6045bd0ee0b930d": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": "hidden",
"width": null
}
},
"899caa91c5eb42c192a453bbdae07755": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "IntSliderModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "IntSliderModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "IntSliderView",
"continuous_update": false,
"description": "",
"description_tooltip": null,
"disabled": false,
"layout": "IPY_MODEL_64665fc13b8a42d18fd763aa5b8b1015",
"max": 12,
"min": 1,
"orientation": "horizontal",
"readout": false,
"readout_format": "d",
"step": 1,
"style": "IPY_MODEL_516544f9507948dc98ce0dd6b03debc5",
"value": 1
}
},
"89a8222e317e4b1e8778ee146e509bd0": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "HBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "HBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "HBoxView",
"box_style": "",
"children": [
"IPY_MODEL_4740ed8eac204819aff9eb87fec414ec",
"IPY_MODEL_25820e07f39a4fcdbd31c2b7ee66d9e6"
],
"layout": "IPY_MODEL_7b7bb12e4d874e198039a25b25beb8a1"
}
},
"9783f9a05efb412a907c1ca6d37bbe8b": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "ButtonStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "ButtonStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"button_color": null,
"font_weight": ""
}
},
"98520a5a7e264428ac2f78cd13c5d110": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "HBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "HBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "HBoxView",
"box_style": "",
"children": [
"IPY_MODEL_52830e0eb5b24b2f8a9775ddd0481997",
"IPY_MODEL_899caa91c5eb42c192a453bbdae07755",
"IPY_MODEL_9c40da9af7d043e48f96384ea4891476"
],
"layout": "IPY_MODEL_cdbc109152a740569129da92604f79fa"
}
},
"98dc9ceeb02c438e905ae7b187d1bf79": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"9b156652759a48fca626c5402091ed1c": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": "500px",
"justify_content": null,
"justify_items": null,
"left": null,
"margin": "10px 0 0 0",
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": "80%"
}
},
"9c40da9af7d043e48f96384ea4891476": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "LabelModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "LabelModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "LabelView",
"description": "",
"description_tooltip": null,
"layout": "IPY_MODEL_cc7c9a6af682497cb7a5da2949a94df2",
"placeholder": "",
"style": "IPY_MODEL_494026d9b72d45aa84a72345b6dc0be6",
"value": "1993-01-16T12:00:00Z"
}
},
"9d5911bd721248e6b4cca40d4c144d0a": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"9fed937f596f4f01af8626da3a9bf4d4": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "VBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "VBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "VBoxView",
"box_style": "",
"children": [
"IPY_MODEL_03c2d47adb564d14abee244cc6b9a473",
"IPY_MODEL_417f0bbb5f9542a8900ce927d60f0e5a",
"IPY_MODEL_ea33ae7035004e7eab6c609286d491e5",
"IPY_MODEL_112f0bd148864375bfec407ec55395f0",
"IPY_MODEL_7eea4a03879c494ea5207667556779d0",
"IPY_MODEL_17f9c28504024965ba2a088745f32aed"
],
"layout": "IPY_MODEL_e5faf58a23844be88a80f30a5025ed8e"
}
},
"a7c9f79245884de2bfc0bbf789d501b5": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"ac8f8ff7d9c1479c8e6f4dca91bff326": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"af4849a1fbdc49b885cd69ea7a8168d7": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "LabelModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "LabelModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "LabelView",
"description": "",
"description_tooltip": null,
"layout": "IPY_MODEL_06dc8e08670a4479975bfcdac9c25217",
"placeholder": "",
"style": "IPY_MODEL_b9d2c1eca4564c9292d97ab5e0d63c7f",
"value": "Use this button once you entered coordinates manually"
}
},
"b06bb3f3159e4e8bb855ad21e2bb99cc": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"b5eaacda35ae4a4fb05ad3accbaef457": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"b9d2c1eca4564c9292d97ab5e0d63c7f": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"c02dd69f503a493299509f133363445a": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"c04e78e227034f95b13aefb32a0c70ec": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"c1a7e8c99e8e4d7d81c5a0d693091f9f": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"c22f9d3ab70643aeba2f63ab62fc4bad": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DescriptionStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DescriptionStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"description_width": ""
}
},
"c62b87356bfc4ecb84e2a53580ba5bc1": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"cc7c9a6af682497cb7a5da2949a94df2": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"cdbc109152a740569129da92604f79fa": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"d276d1d76871419b905fe5e0ab7f577d": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "DropdownModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "DropdownModel",
"_options_labels": [
"Temperature",
"Salinity",
"U-Velocity",
"V-Velocity"
],
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "DropdownView",
"description": "Select Layer:",
"description_tooltip": null,
"disabled": false,
"index": 0,
"layout": "IPY_MODEL_1e1c9e60455e4a4aab4cf521e764e879",
"style": "IPY_MODEL_1c26addaa41544f1bc4878908152793a"
}
},
"d3d180ce24cf440fb490411a9e118dfd": {
"model_module": "jupyter-leaflet",
"model_module_version": "^0.20",
"model_name": "LeafletZoomControlModel",
"state": {
"_model_module": "jupyter-leaflet",
"_model_module_version": "^0.20",
"_model_name": "LeafletZoomControlModel",
"_view_count": null,
"_view_module": "jupyter-leaflet",
"_view_module_version": "^0.20",
"_view_name": "LeafletZoomControlView",
"options": [
"position",
"zoom_in_text",
"zoom_in_title",
"zoom_out_text",
"zoom_out_title"
],
"position": "topleft",
"zoom_in_text": "+",
"zoom_in_title": "Zoom in",
"zoom_out_text": "-",
"zoom_out_title": "Zoom out"
}
},
"d93577da54ae496c89fe0a8e52bc123e": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"e3e8f41f69b948099d3c3d1533c0083e": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "FloatTextModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "FloatTextModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "FloatTextView",
"continuous_update": false,
"description": "Max Lat:",
"description_tooltip": null,
"disabled": false,
"layout": "IPY_MODEL_7f09f3f0fa5f4b9caf5e2f31babe5e7e",
"step": null,
"style": "IPY_MODEL_5e0bb37278e24ecf9c46adf78f3e6d65",
"value": 0
}
},
"e5c856b54f424b39ac2431f597b9a834": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "HBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "HBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "HBoxView",
"box_style": "",
"children": [
"IPY_MODEL_707e05a9d6674f428c15a676c11d9ccf",
"IPY_MODEL_0031ca7565554720bf97c9fdee12310a",
"IPY_MODEL_0618159250934072a39d89c79c5914c2"
],
"layout": "IPY_MODEL_b06bb3f3159e4e8bb855ad21e2bb99cc"
}
},
"e5faf58a23844be88a80f30a5025ed8e": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"e95388d77cc547a097fa88c31717ac76": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "1.5.0",
"model_name": "LabelModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "1.5.0",
"_model_name": "LabelModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "1.5.0",
"_view_name": "LabelView",
"description": "",
"description_tooltip": null,
"layout": "IPY_MODEL_b5eaacda35ae4a4fb05ad3accbaef457",
"placeholder": "",
"style": "IPY_MODEL_a7c9f79245884de2bfc0bbf789d501b5",
"value": "Choose a layer to display on the map:"
}
},
"ea33ae7035004e7eab6c609286d491e5": {
"model_module": "@jupyter-widgets/output",
"model_module_version": "1.0.0",
"model_name": "OutputModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/output",
"_model_module_version": "1.0.0",
"_model_name": "OutputModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/output",
"_view_module_version": "1.0.0",
"_view_name": "OutputView",
"layout": "IPY_MODEL_4f69bcf36247467ca2d7a38a44fed2bf",
"msg_id": "",
"outputs": []
}
},
"ec9b5d61d8224c808162307f7ba4e980": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"ef655a17db3f4003a6f9c23b056ef40b": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"f2819fd865b94220b8fcc7b2a16d036a": {
"model_module": "jupyter-leaflet",
"model_module_version": "^0.20",
"model_name": "LeafletMapStyleModel",
"state": {
"_model_module": "jupyter-leaflet",
"_model_module_version": "^0.20",
"_model_name": "LeafletMapStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "StyleView",
"cursor": "grab"
}
},
"fe37746638f349709ee598508202d2cb": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "1.2.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "1.2.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "1.2.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"overflow_x": null,
"overflow_y": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
}
}
}
},
"nbformat": 4,
"nbformat_minor": 0
}