From 394f1fc302e8d5307b5b5051141f158ca7a63607 Mon Sep 17 00:00:00 2001 From: Andrew Blackford <62357205+acblackford@users.noreply.github.com> Date: Tue, 12 Aug 2025 13:02:16 -0500 Subject: [PATCH 01/28] initial draft of tornadoes story notebook --- .../stories/tornadoes_2024_notebook.ipynb | 8947 +++++++++++++++++ 1 file changed, 8947 insertions(+) create mode 100644 user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb new file mode 100644 index 00000000..24c7779c --- /dev/null +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -0,0 +1,8947 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "d15f9d8c-e82d-4631-b286-3b5502a6848f", + "metadata": {}, + "source": [ + "---\n", + "title: The Hyperactive Spring 2024 Tornado Season\n", + "description: A detailed overview of the historic season.\n", + "\n", + " - Andrew Blackford[1], Trent Cowan[1], Udaysankar Nair[1], Josh Wurman[2], Karen Kosiba[2], David Roueche[3], Catherine Finley[4], and Jana Houser[5]\n", + "\n", + "[1] The University of Alabama in Huntsville (UAH)\n", + "\n", + "[2] Colorado State University\n", + "\n", + "[3] Auburn University\n", + "\n", + "[4] The University of North Dakota\n", + "\n", + "[5] The Ohio State University\n", + " - Andrew Blackford (editor)\n", + "date: August 7, 2025\n", + "execute:\n", + " freeze: true\n", + "---" + ] + }, + { + "cell_type": "markdown", + "id": "a6d13686-de54-418d-bc10-3c18a24c4eb3", + "metadata": {}, + "source": [ + "# Run This Notebook" + ] + }, + { + "cell_type": "markdown", + "id": "62f07d98-ab10-4ee2-a9d4-1df971949bfb", + "metadata": {}, + "source": [ + "

πŸš€ Launch in VEDA JupyterHub (requires access)

\n", + "\n", + "

To obtain credentials to VEDA Hub, follow this link for more information.

" + ] + }, + { + "cell_type": "markdown", + "id": "2136d645-0cab-4139-ab64-02608cdd83d9", + "metadata": {}, + "source": [ + "
\n", + "Disclaimer: it is highly recommended to run a tutorial within NASA VEDA JupyterHub, which already includes functions for processing and visualizing data specific to VEDA stories. Running the tutorial outside of the VEDA JupyterHub may lead to errors, specifically related to EarthData authentication. Additionally, it is recommended to use the Pangeo workspace within the VEDA JupyterHub, since certain packages relevant to this tutorial are already installed.
\n", + "\n", + "

If you do not have a VEDA Jupyterhub Account you can launch this notebook on your local environment using MyBinder by clicking the icon below.

\n", + "
\n", + "\n", + "\"Binder\" " + ] + }, + { + "cell_type": "markdown", + "id": "0b0c26b2-a344-4b0c-924c-3fee3960a6b7", + "metadata": {}, + "source": [ + "## Environment Setup" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "fbad9700-ce5d-4210-9c58-f9204917b7ab", + "metadata": {}, + "outputs": [], + "source": [ + "# Load libraries\n", + "#!pip install -q earthaccess pandas xarray fsspec requests pystac_client\n", + "\n", + "import datetime\n", + "import glob\n", + "import os\n", + "\n", + "import earthaccess\n", + "import pandas as pd\n", + "import plotutils as putils\n", + "import requests\n", + "import xarray as xr\n", + "from earthaccess import Store\n", + "from pystac_client import Client" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "8fc9234c-975b-485d-bfb3-d9100ff3b12d", + "metadata": {}, + "outputs": [], + "source": [ + "# For retrieving data already catalogued in VEDA STAC\n", + "STAC_API_URL = \"https://openveda.cloud/api/stac\"\n", + "RASTER_API_URL = \"https://openveda.cloud/api/raster\"" + ] + }, + { + "cell_type": "markdown", + "id": "6b9c9d7d-f5cc-49e7-b58a-8c7bb5b9d751", + "metadata": {}, + "source": [ + "## Overview\n", + "\n", + "The Spring 2024 tornado season was one of the most active on record in the United States. As of May 31st, there were 1,176 tornadoes confirmed in the United States. The vast majority of these occurred in the meteorological spring months of March-May, placing this period within the 90th percentile of activity compared to climatological averages. This three-month period was responsible for 36 fatalities, hundreds of injuries, and was the second most prolific tornado season since at least 1950–second only to the deadly 2011 tornado season. Through the end of May, severe thunderstorms alone accounted for nearly 42 billion dollars (USD) in damage across the United States, with four tornado outbreaks during the spring attributing over $1 billion in damage each. Four tornadoes were rated violent EF-4s on the Enhanced Fujita Scale with wind speeds from 166-200 mph, and 27 were rated as intense EF-3s with wind speeds from 136-165 mph.\n", + "\n", + "The National Weather Service (NWS) issued 1,728 tornado warnings across the United States from March to May, with several of these being upgraded to Particularly Dangerous Situation (PDS) Tornado Warnings if confirmed to be large and actively damaging structures. An even smaller subset was upgraded further from PDS to Tornado Emergencies if the tornado was confirmed to be large and was directly threatening a larger population center. As a result, millions of Americans were impacted by tornado warnings during the Spring of 2024, with the vast majority of counties in the Midwest, Southeast, and Southern Great Plains seeing a warning at least once during the three-month period. Compared to average spring severe weather seasons, the Southeast United States saw a less active season, while the Great Plains and Midwest saw a more active season." + ] + }, + { + "cell_type": "markdown", + "id": "4d361505-c25b-4bd8-b85c-8b8ecf817710", + "metadata": {}, + "source": [ + "# Example: NWS DAT Tornado Tracks (March-May 2024)\n" + ] + }, + { + "cell_type": "markdown", + "id": "72e56206-4827-4ac2-bbaf-62d8bf6bd234", + "metadata": {}, + "source": [ + "This example pulls tornado paths from March-May 2024 via the VEDA STAC catalog and visualize. These tornado tracks were rasterized from the NWS Damage Assessment Toolkit (DAT), which is a geographic information system (GIS)-hosted dataset where post-storm damage survey results are uploaded and referenced to the location where each description of damage occurred. This dataset includes center lines of all tornado tracks, polygons that break down the EF rating at each point along the path, descriptions of the damage at each survey location, and ground damage pictures of the damage at most entry points.\n" + ] + }, + { + "cell_type": "markdown", + "id": "9851b652-08f7-48e2-9cf7-46cd0a255550", + "metadata": {}, + "source": [ + "## Processing steps:\n", + "1.) Choose STAC catalog ID and date
\n", + "2.) Retrieve collection information and items from VEDA STAC catalog
\n", + "3.) Retrieve item statistics and tiling information
\n", + "4.) Plot data
" + ] + }, + { + "cell_type": "markdown", + "id": "f9058bf8-9a35-4265-a848-11bfa630b8d7", + "metadata": {}, + "source": [ + "## Choose variable and retrieve json from VEDA STAC catalogue" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "f1ef497a-4fa7-499c-8237-21f4cad1d45b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + " \n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# TODO: Change collection_ID and date\n", + "client_STAC = Client.open(STAC_API_URL)\n", + "\n", + "collection_id = \"tornadoes-2024-paths\"\n", + "date = \"2024-05-31\"\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "#((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "((vmin, vmax),) = ((0,5),)\n", + "\n", + "collection" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "b3bafa71-607c-49cc-9e5f-8f3d2f882410", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=0%2C5'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-103.501720443, 18.467731627, -66.701720443, 46.592731627], 'center': [-85.101720443, 32.530231627, 0]}\n" + ] + } + ], + "source": [ + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "#colormap_name = \"tornado_ef_scale\"\n", + "colormap_name = \"turbo\"\n", + "\n", + "# Build endpoint URL without worrying about trailing slashes\n", + "response = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", + " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin},{vmax}\",\n", + ")\n", + "\n", + "response.raise_for_status()\n", + "\n", + "tiles = response.json()\n", + "print(tiles)" + ] + }, + { + "cell_type": "markdown", + "id": "4580703c-269a-4368-99ba-b2e140314b46", + "metadata": {}, + "source": [ + "## Plot data" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "9af1c710-0423-4d3e-9c93-4fff13d1dab5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Use the new plot_folium_from_VEDA_STAC function\n", + "m = putils.plot_folium_from_VEDA_STAC(\n", + " tiles_url_template=tiles[\"tiles\"][0],\n", + " center_coords=[41.31, -94.46],\n", + " zoom_level=9,\n", + " rescale=(vmin, vmax),\n", + " colormap_name=colormap_name,\n", + " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " layer_name=\"Tornado Tracks\",\n", + "# date=f\"{date}T00:00:00Z\",\n", + " date=\"(March-May 2024)\",\n", + " colorbar_caption=\"EF Rating\",\n", + " attribution=\"VEDA - NWS DAT Tornado Tracks\",\n", + " tile_name=\"Tornado Tracks (March-May 2024)\",\n", + " opacity=0.8,\n", + " height=\"800px\",\n", + ")\n", + "\n", + "# Display the map\n", + "m" + ] + }, + { + "cell_type": "markdown", + "id": "841fb116-8103-44b8-b897-cf5d10ac54a1", + "metadata": { + "jp-MarkdownHeadingCollapsed": true + }, + "source": [ + "# Example: NWS Tornado Polygons (March-May 2024)\n", + "\n", + "Pull the NWS Tornado Polygon data from the VEDA STAC catalog and visualize\n" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "965db310-ee99-4af3-96a8-00e63854351d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-polygons\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Official NWS surveyed tornado tracks from March to May of 2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " 255\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"tornado_ef_scale\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"NWS Tornado Tracks from MAM 2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -104.72280125674247\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 27.9971496536041\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -71.9717534735214\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 46.847529413454325\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-31T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-31T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-31T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-31T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# TODO: Change collection_ID and date\n", + "client_STAC = Client.open(STAC_API_URL)\n", + "\n", + "collection_id = \"tornadoes-2024-polygons\"\n", + "date = \"2024-05-31\"\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "#((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "((vmin, vmax),) = ((0,5),)\n", + "\n", + "collection" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "bdba0ec8-aced-4a16-a5ad-e261aa586cfd", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=0%2C5'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-104.72280125674247, 27.9971496536041, -71.9717534735214, 46.847529413454325], 'center': [-88.34727736513193, 37.42233953352921, 0]}\n" + ] + } + ], + "source": [ + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "#colormap_name = \"tornado_ef_scale\"\n", + "colormap_name = \"turbo\"\n", + "\n", + "# Build endpoint URL without worrying about trailing slashes\n", + "response = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", + " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin},{vmax}\",\n", + ")\n", + "\n", + "response.raise_for_status()\n", + "\n", + "tiles = response.json()\n", + "print(tiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "f6183652-36ca-4d4f-af4e-41070e813092", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Use the new plot_folium_from_VEDA_STAC function\n", + "m = putils.plot_folium_from_VEDA_STAC(\n", + " tiles_url_template=tiles[\"tiles\"][0],\n", + " center_coords=[40.30, -84.05],\n", + " zoom_level=10.25,\n", + " rescale=(vmin, vmax),\n", + " colormap_name=colormap_name,\n", + " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " layer_name=\"Tornado Tracks [Polygons]\",\n", + "# date=f\"{date}T00:00:00Z\",\n", + " date=\"(March-May 2024)\",\n", + " colorbar_caption=\"EF Rating\",\n", + " attribution=\"VEDA - NWS DAT Tornado Polygons\",\n", + " tile_name=\"Tornado Tracks [Polygons] (March-May 2024)\",\n", + " opacity=0.8,\n", + " height=\"800px\",\n", + ")\n", + "\n", + "# Display the map\n", + "m" + ] + }, + { + "cell_type": "markdown", + "id": "f2bfc2b9-27a1-4ec3-8bfa-e527ecc20a73", + "metadata": { + "jp-MarkdownHeadingCollapsed": true + }, + "source": [ + "# Example: Black Marble Nightlights\n", + "\n", + "Pull the NASA Black Marble Nightlights data from from the VEDA STAC catalog and visualize\n" + ] + }, + { + "cell_type": "markdown", + "id": "257cac61-d592-4fa0-b7a7-3c14db93a9f0", + "metadata": {}, + "source": [ + "NASA’s Black Marble night lights dataset provides satellite images of Earth at night, capturing the light pollution from cities, roads, and other human activity. These images are collected by the Visible Infrared Imaging Radiometer Suite (VIIRS) sensor on the Suomi National Polar-orbiting Partnership (NPP) satellite, and can be used to examine changes in illumination over time. In this story, night lights data is used to assess changes before and after a tornado impacts a town, highlighting areas affected by power outages that may cause recovery slowdowns.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "d55ccd28-c8ba-47cf-bfd3-03c3a8cd5beb", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"lakeview-nightlights-tornadoes-2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Black Marble night lights imagery of tornado damage at Lakeview, Ohio in the spring 2024 tornado season.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " -999\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -150\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 150\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"bwr\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " datetime_range\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Black Marble Night Lights (Lakeview OH Tornado Damage; Difference)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -84.2954\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 40.20127368220017\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -83.57612536287245\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 40.69122631779985\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-03-14T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-03-14T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-03-14T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-03-14T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# TODO: Change collection_ID and date\n", + "client_STAC = Client.open(STAC_API_URL)\n", + "\n", + "collection_id = \"lakeview-nightlights-tornadoes-2024\"\n", + "date = \"2024-03-14\"\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "\n", + "collection" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "6b3f9709-09bc-43ef-b3fd-d89f3c0cd5e9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=bwr&rescale=-150%2C150'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-84.2954, 40.20127368220017, -83.57612536287245, 40.69122631779985], 'center': [-83.93576268143622, 40.446250000000006, 0]}\n" + ] + } + ], + "source": [ + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "#colormap_name = \"tornado_ef_scale\"\n", + "colormap_name = \"bwr\"\n", + "\n", + "# Build endpoint URL without worrying about trailing slashes\n", + "response = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", + " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin},{vmax}\",\n", + ")\n", + "\n", + "response.raise_for_status()\n", + "\n", + "tiles = response.json()\n", + "print(tiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "f283977b-e862-4f2d-9032-414d974a35b4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Visualization of Indian Lake, Ohio showing large decreases in artificial light emissions after an EF-3 tornado on March 14, 2024.\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Use the new plot_folium_from_VEDA_STAC function\n", + "m = putils.plot_folium_from_VEDA_STAC(\n", + " tiles_url_template=tiles[\"tiles\"][0],\n", + " center_coords=[40.496, -83.884],\n", + " zoom_level=12.5,\n", + " rescale=(vmin, vmax),\n", + " colormap_name=colormap_name,\n", + " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " layer_name=\"Black Marble Nightlights\",\n", + " date=f\"{date}T00:00:00Z\",\n", + " colorbar_caption=\"Artificial Light\",\n", + " attribution=\"VEDA Black Marble Nightlights\",\n", + " tile_name=\"Black Marble Nightlights\",\n", + " opacity=0.8,\n", + " height=\"800px\",\n", + ")\n", + "\n", + "print(\n", + " \"Visualization of Indian Lake, Ohio showing large decreases in artificial light emissions after an EF-3 tornado on March 14, 2024.\"\n", + ")\n", + "# Display the map\n", + "m" + ] + }, + { + "cell_type": "markdown", + "id": "77daa626-6096-41e3-b2cb-4398e1fe647f", + "metadata": {}, + "source": [ + "# Example: DOW7 Base Reflectivity (Radar)\n", + "\n", + "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize\n" + ] + }, + { + "cell_type": "markdown", + "id": "13ccdb69-68d4-459b-a9e6-1570aefd762b", + "metadata": {}, + "source": [ + "The Doppler on Wheels (DOW) radar, which is mounted on vehicles and can get closer to storms, can be examined in cases where it was deployed in order to gather more detailed information than the NWS regional WSR-88D radars. DOW radars are typically used for research and can capture clearer, higher-resolution data on tornadoes, while WSR-88D provides a wider view but with slightly less detail.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "7213b9f2-8444-462b-a994-3e8cbb6beed2", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-dow-refl-harlan\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Horizontal Reflectivity values (dBZ) collected by DOW7 from the Harlan, Iowa EF-3 tornado on April 26, 2024 at 23:08:12.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " -32768\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 50\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"turbo\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"DOW7 Reflectivity (Harlan, IA)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -95.42\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.62\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -95.3\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.72\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-04-26T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-04-26T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-04-26T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-04-26T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# TODO: Change collection_ID and date\n", + "client_STAC = Client.open(STAC_API_URL)\n", + "\n", + "collection_id = \"tornadoes-2024-dow-refl-harlan\"\n", + "date = \"2024-04-26\"\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "\n", + "collection" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "3c3067b1-f38d-4c3d-8c94-06e8922c3746", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=-10%2C50'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-95.42, 41.62, -95.3, 41.72], 'center': [-95.36, 41.67, 0]}\n" + ] + } + ], + "source": [ + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "colormap_name = \"turbo\"\n", + "\n", + "# Build endpoint URL without worrying about trailing slashes\n", + "response = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", + " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin},{vmax}\",\n", + ")\n", + "\n", + "response.raise_for_status()\n", + "\n", + "tiles = response.json()\n", + "print(tiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "a0767a4a-ef94-4109-a1fc-a74f1dae7765", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DOW-collected reflectivity values from the Minden-Harlan, Iowa EF-3 tornado on April 26, 2024 as it passed northwest of Harlan.\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Use the new plot_folium_from_VEDA_STAC function\n", + "m = putils.plot_folium_from_VEDA_STAC(\n", + " tiles_url_template=tiles[\"tiles\"][0],\n", + " center_coords=[41.668, -95.372],\n", + " zoom_level=14,\n", + " rescale=(vmin, vmax),\n", + " colormap_name=colormap_name,\n", + " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " layer_name=\"DOW7 Reflectivity (Harlan, IA)\",\n", + " date=f\"{date}T00:00:00Z\",\n", + " colorbar_caption=\"dBZ\",\n", + " attribution=\"DOW7 Reflectivity (Harlan, IA)\",\n", + " tile_name=\"DOW7 Reflectivity (Harlan, IA)\",\n", + " opacity=0.8,\n", + " height=\"800px\",\n", + ")\n", + "\n", + "print(\n", + " \"DOW-collected reflectivity values from the Minden-Harlan, Iowa EF-3 tornado on April 26, 2024 as it passed northwest of Harlan.\"\n", + ")\n", + "# Display the map\n", + "m" + ] + }, + { + "cell_type": "markdown", + "id": "1004044a-bdfb-4f18-8438-8367cec7ec40", + "metadata": {}, + "source": [ + "# Example: DOW7 Velocity (Radar)\n", + "\n", + "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize\n" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "50d9d4a0-3eb7-4382-936b-0cc7fd29e27c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-dow-v-harlan\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Velocities (m/s) of the EF-3 Harlan, IA tornado on April 26, 2024 collected by DOW7. Scan taken at 23:08:12..\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " -32768\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -75\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 75\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"seismic\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"DOW7 Velocity (Ground; Harlan, IA)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -95.42\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.62\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -95.3\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.72\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-04-26T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-04-26T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-04-26T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-04-26T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# TODO: Change collection_ID and date\n", + "client_STAC = Client.open(STAC_API_URL)\n", + "\n", + "collection_id = \"tornadoes-2024-dow-v-harlan\"\n", + "date = \"2024-04-26\"\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "\n", + "collection" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "61251d1a-f1d0-4daa-9aef-9c6c3aed41e2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=bwr&rescale=-75%2C75'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-95.42, 41.62, -95.3, 41.72], 'center': [-95.36, 41.67, 0]}\n" + ] + } + ], + "source": [ + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "colormap_name = \"bwr\"\n", + "\n", + "# Build endpoint URL without worrying about trailing slashes\n", + "response = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", + " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin},{vmax}\",\n", + ")\n", + "\n", + "response.raise_for_status()\n", + "\n", + "tiles = response.json()\n", + "print(tiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "45cb9b07-0f5f-4297-891b-aa378f51fe76", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DOW-collected velocity values from the Minden-Harlan, Iowa EF-3 tornado on April 26, 2024 as it passed northwest of Harlan.\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Use the new plot_folium_from_VEDA_STAC function\n", + "m = putils.plot_folium_from_VEDA_STAC(\n", + " tiles_url_template=tiles[\"tiles\"][0],\n", + " center_coords=[41.668, -95.372],\n", + " zoom_level=14,\n", + " rescale=(vmin, vmax),\n", + " colormap_name=colormap_name,\n", + " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " layer_name=\"DOW7 Velocity (Harlan, IA)\",\n", + " date=f\"{date}T00:00:00Z\",\n", + " colorbar_caption=\"m/s\",\n", + " attribution=\"DOW7 Velocity (Harlan, IA)\",\n", + " tile_name=\"DOW7 Velocity (Harlan, IA)\",\n", + " opacity=0.8,\n", + " height=\"800px\",\n", + ")\n", + "\n", + "print(\n", + " \"DOW-collected velocity values from the Minden-Harlan, Iowa EF-3 tornado on April 26, 2024 as it passed northwest of Harlan.\"\n", + ")\n", + "# Display the map\n", + "m" + ] + }, + { + "cell_type": "markdown", + "id": "a6f4d8e4-1e6a-4aaa-b2af-107bc5466344", + "metadata": { + "jp-MarkdownHeadingCollapsed": true + }, + "source": [ + "# Example: DOW7 Correlation Coefficient (Radar)\n", + "\n", + "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize\n" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "2461b25d-de5d-42b1-b30d-464185144021", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-dow-rhohv-greenfield\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Correlation Coefficient (rhoHV) collected by DOW7 from the Greenfield, Iowa EF-4 tornado on May 21, 2024 at 20:41:08.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " 32768\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"turbo\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"DOW7 Correlation Coefficient (Greenfield, IA)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.5\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.275\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.4\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.325\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# TODO: Change collection_ID and date\n", + "client_STAC = Client.open(STAC_API_URL)\n", + "\n", + "collection_id = \"tornadoes-2024-dow-rhohv-greenfield\"\n", + "date = \"2024-05-21\"\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "\n", + "collection" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "f76739f7-236f-4b6f-be79-8772248e1f92", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=0%2C1'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.5, 41.275, -94.4, 41.325], 'center': [-94.45, 41.3, 0]}\n" + ] + } + ], + "source": [ + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "colormap_name = \"turbo\"\n", + "\n", + "# Build endpoint URL without worrying about trailing slashes\n", + "response = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", + " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin},{vmax}\",\n", + ")\n", + "\n", + "response.raise_for_status()\n", + "\n", + "tiles = response.json()\n", + "print(tiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "9c112371-86d5-4097-8c73-d9b510560cda", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Use the new plot_folium_from_VEDA_STAC function\n", + "m = putils.plot_folium_from_VEDA_STAC(\n", + " tiles_url_template=tiles[\"tiles\"][0],\n", + " center_coords=[41.3036, -94.4569],\n", + " zoom_level=16,\n", + " rescale=(vmin, vmax),\n", + " colormap_name=colormap_name,\n", + " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " layer_name=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", + " date=f\"{date}T00:00:00Z\",\n", + " attribution=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", + " tile_name=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", + " opacity=0.8,\n", + " height=\"800px\",\n", + ")\n", + "\n", + "print(\n", + " \"DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\"\n", + ")\n", + "# Display the map\n", + "m" + ] + }, + { + "cell_type": "markdown", + "id": "c78230c8-39be-44ee-920a-1b631d6604e4", + "metadata": { + "jp-MarkdownHeadingCollapsed": true + }, + "source": [ + "# Example: DOW7-Derived Maximum Velocity Swath (Radar)\n", + "\n", + "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize\n" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "efb13664-1597-478a-b8e5-fac20e6ac481", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-dow-vmax-greenfield\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Derived maximum velocities of the EF-4 Greenfield, IA tornado on May 21, 2024 collected by DOW7. Converted from m/s to mph.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " -999\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 55\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 250\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"gist_ncar\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Derived Maximum Velocity (Greenfield, IA; DOW7)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.4784\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.29080000000008\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.416\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.31980000000008\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# TODO: Change collection_ID and date\n", + "client_STAC = Client.open(STAC_API_URL)\n", + "\n", + "collection_id = \"tornadoes-2024-dow-vmax-greenfield\"\n", + "date = \"2024-05-21\"\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "\n", + "collection" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "14d08573-78ea-45bf-baf0-58cddf840401", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=gist_ncar&rescale=55%2C250'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.4784, 41.29080000000008, -94.416, 41.31980000000008], 'center': [-94.4472, 41.30530000000008, 0]}\n" + ] + } + ], + "source": [ + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "colormap_name = \"gist_ncar\"\n", + "\n", + "# Build endpoint URL without worrying about trailing slashes\n", + "response = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", + " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin},{vmax}\",\n", + ")\n", + "\n", + "response.raise_for_status()\n", + "\n", + "tiles = response.json()\n", + "print(tiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "b062836d-83f6-414d-91d2-9255e0b46a3c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Use the new plot_folium_from_VEDA_STAC function\n", + "m = putils.plot_folium_from_VEDA_STAC(\n", + " tiles_url_template=tiles[\"tiles\"][0],\n", + " center_coords=[41.3036, -94.4569],\n", + " zoom_level=16,\n", + " rescale=(vmin, vmax),\n", + " colormap_name=colormap_name,\n", + " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " layer_name=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", + " date=f\"{date}T00:00:00Z\",\n", + " colorbar_caption=\"m/s\",\n", + " attribution=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", + " tile_name=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", + " opacity=0.8,\n", + " height=\"800px\",\n", + ")\n", + "\n", + "print(\n", + " \"DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\"\n", + ")\n", + "# Display the map\n", + "m" + ] + }, + { + "cell_type": "markdown", + "id": "6d9e15cb-bd9b-4439-8df3-83347673eebf", + "metadata": { + "jp-MarkdownHeadingCollapsed": true + }, + "source": [ + "# Clean Up (Optional)\n", + "\n", + "\n", + "Remove any **.gif** files that were created to save on storage space. Additionally, remove any **core** files that were created if the kernel crashed." + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "7bd64da5-fdb4-44d8-a0dc-3ed4b1160a12", + "metadata": {}, + "outputs": [], + "source": [ + "# find all .gif files in the current directory\n", + "for gif_path in glob.glob(\"*.gif\"):\n", + " try:\n", + " os.remove(gif_path)\n", + " print(f\"Removed {gif_path}\")\n", + " except OSError as e:\n", + " print(f\"Error removing {gif_path}: {e}\")\n", + "\n", + "# find all core files in the current directory\n", + "for core_path in glob.glob(\"core.*\"):\n", + " try:\n", + " os.remove(core_path)\n", + " print(f\"Removed {core_path}\")\n", + " except OSError as e:\n", + " print(f\"Error removing {core_path}: {e}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d22c6621-b51a-43eb-a565-af4896aa0e7a", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From 436e6e1b69e6206ff4299877c25a0f983246d42c Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Wed, 13 Aug 2025 09:29:32 -0500 Subject: [PATCH 02/28] update tornado colorbar and heading --- .../stories/tornadoes_2024_notebook.ipynb | 957 ++++++++++-------- 1 file changed, 545 insertions(+), 412 deletions(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 24c7779c..23f5ffc9 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -1,27 +1,21 @@ { "cells": [ { - "cell_type": "markdown", - "id": "d15f9d8c-e82d-4631-b286-3b5502a6848f", - "metadata": {}, + "cell_type": "raw", + "id": "95829697", + "metadata": { + "vscode": { + "languageId": "raw" + } + }, "source": [ "---\n", "title: The Hyperactive Spring 2024 Tornado Season\n", "description: A detailed overview of the historic season.\n", - "\n", - " - Andrew Blackford[1], Trent Cowan[1], Udaysankar Nair[1], Josh Wurman[2], Karen Kosiba[2], David Roueche[3], Catherine Finley[4], and Jana Houser[5]\n", - "\n", - "[1] The University of Alabama in Huntsville (UAH)\n", - "\n", - "[2] Colorado State University\n", - "\n", - "[3] Auburn University\n", - "\n", - "[4] The University of North Dakota\n", - "\n", - "[5] The Ohio State University\n", + "author:\n", + " - Andrew Blackford (UAH), Trent Cowan (UAH), Udaysankar Nair (UAH), Josh Wurman (CSU), Karen Kosiba (CSU), David Roueche (AU), Catherine Finley (UND), and Jana Houser (OSU)\n", " - Andrew Blackford (editor)\n", - "date: August 7, 2025\n", + "date: August 13, 2025\n", "execute:\n", " freeze: true\n", "---" @@ -73,18 +67,19 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "id": "fbad9700-ce5d-4210-9c58-f9204917b7ab", "metadata": {}, "outputs": [], "source": [ "# Load libraries\n", - "#!pip install -q earthaccess pandas xarray fsspec requests pystac_client\n", + "#!pip install -q earthaccess pandas xarray fsspec requests branca pystac_client\n", "\n", "import datetime\n", "import glob\n", "import os\n", - "\n", + "import folium\n", + "from branca.element import Template, MacroElement\n", "import earthaccess\n", "import pandas as pd\n", "import plotutils as putils\n", @@ -96,7 +91,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "id": "8fc9234c-975b-485d-bfb3-d9100ff3b12d", "metadata": {}, "outputs": [], @@ -156,7 +151,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "id": "f1ef497a-4fa7-499c-8237-21f4cad1d45b", "metadata": {}, "outputs": [ @@ -1014,7 +1009,7 @@ "" ] }, - "execution_count": 4, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -1047,7 +1042,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "id": "b3bafa71-607c-49cc-9e5f-8f3d2f882410", "metadata": {}, "outputs": [ @@ -1089,7 +1084,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "id": "9af1c710-0423-4d3e-9c93-4fff13d1dab5", "metadata": {}, "outputs": [ @@ -1115,10 +1110,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_232b61fa3f89873aa85c6c34bb5e590f {\n", + " #map_a549248a96f7ec8817728a7eddc8fc67 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 800.0px;\n", + " height: 890.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -1148,7 +1143,6 @@ " </script>\n", "\n", " \n", - " <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js"></script>\n", "</head>\n", "<body>\n", " \n", @@ -1169,14 +1163,91 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_232b61fa3f89873aa85c6c34bb5e590f" ></div>\n", - " \n", + " <div class="folium-map" id="map_a549248a96f7ec8817728a7eddc8fc67" ></div>\n", + " \n", + " \n", + "<div style="\n", + " position: fixed; \n", + " bottom: 150px; \n", + " left: 1300px; \n", + " width: 120px; \n", + " height: auto; \n", + " background-color: white; \n", + " border:2px solid grey; \n", + " z-index:9999; \n", + " font-size:20px;\n", + " padding: 10px;\n", + " box-shadow: 2px 2px 6px rgba(0,0,0,0.3);\n", + " ">\n", + " <p style="margin: 0 0 10px 0; font-weight: bold; text-align: center;">EF Rating</p>\n", + "\n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #573F5D; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF0</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #62B5F7; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF1</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #74F88E; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF2</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #E9DD61; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF3</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #EE7545; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF4</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #FF0000; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF5</span>\n", + " </div>\n", + " \n", + "</div>\n", "</body>\n", "<script>\n", " \n", " \n", - " var map_232b61fa3f89873aa85c6c34bb5e590f = L.map(\n", - " "map_232b61fa3f89873aa85c6c34bb5e590f",\n", + " var map_a549248a96f7ec8817728a7eddc8fc67 = L.map(\n", + " "map_a549248a96f7ec8817728a7eddc8fc67",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", @@ -1188,13 +1259,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_232b61fa3f89873aa85c6c34bb5e590f);\n", + " L.control.scale().addTo(map_a549248a96f7ec8817728a7eddc8fc67);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_d62619d01c7423f373b3909392cc3356 = L.tileLayer(\n", + " var tile_layer_92294d2f33dce1f495a2347692aa6767 = L.tileLayer(\n", " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", " {\n", " "minZoom": 0,\n", @@ -1211,10 +1282,10 @@ " );\n", " \n", " \n", - " tile_layer_d62619d01c7423f373b3909392cc3356.addTo(map_232b61fa3f89873aa85c6c34bb5e590f);\n", + " tile_layer_92294d2f33dce1f495a2347692aa6767.addTo(map_a549248a96f7ec8817728a7eddc8fc67);\n", " \n", " \n", - " var tile_layer_7fbb14f6943e67a3c1986de3c8687150 = L.tileLayer(\n", + " var tile_layer_e6f1f5193e3692db64acdc8d45bb1e98 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C5",\n", " {\n", " "minZoom": 0,\n", @@ -1231,111 +1302,122 @@ " );\n", " \n", " \n", - " tile_layer_7fbb14f6943e67a3c1986de3c8687150.addTo(map_232b61fa3f89873aa85c6c34bb5e590f);\n", + " tile_layer_e6f1f5193e3692db64acdc8d45bb1e98.addTo(map_a549248a96f7ec8817728a7eddc8fc67);\n", " \n", " \n", - " var layer_control_4520bfc32d6b29c57893c85993c99b37_layers = {\n", + " var layer_control_04ce080c0634bab1301d1ec08affd806_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_d62619d01c7423f373b3909392cc3356,\n", + " "openstreetmap" : tile_layer_92294d2f33dce1f495a2347692aa6767,\n", " },\n", " overlays : {\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_7fbb14f6943e67a3c1986de3c8687150,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_e6f1f5193e3692db64acdc8d45bb1e98,\n", " },\n", " };\n", - " let layer_control_4520bfc32d6b29c57893c85993c99b37 = L.control.layers(\n", - " layer_control_4520bfc32d6b29c57893c85993c99b37_layers.base_layers,\n", - " layer_control_4520bfc32d6b29c57893c85993c99b37_layers.overlays,\n", + " let layer_control_04ce080c0634bab1301d1ec08affd806 = L.control.layers(\n", + " layer_control_04ce080c0634bab1301d1ec08affd806_layers.base_layers,\n", + " layer_control_04ce080c0634bab1301d1ec08affd806_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_232b61fa3f89873aa85c6c34bb5e590f);\n", + " ).addTo(map_a549248a96f7ec8817728a7eddc8fc67);\n", "\n", " \n", - " \n", - " var color_map_ccdaaef36146868055248e21512c6ab1 = {};\n", - "\n", - " \n", - " color_map_ccdaaef36146868055248e21512c6ab1.color = d3.scale.threshold()\n", - " .domain([0.0, 0.01002004008016032, 0.02004008016032064, 0.03006012024048096, 0.04008016032064128, 0.050100200400801605, 0.06012024048096192, 0.07014028056112225, 0.08016032064128256, 0.09018036072144289, 0.10020040080160321, 0.11022044088176353, 0.12024048096192384, 0.13026052104208416, 0.1402805611222445, 0.15030060120240482, 0.16032064128256512, 0.17034068136272545, 0.18036072144288579, 0.1903807615230461, 0.20040080160320642, 0.21042084168336672, 0.22044088176352705, 0.23046092184368738, 0.24048096192384769, 0.250501002004008, 0.2605210420841683, 0.27054108216432865, 0.280561122244489, 0.2905811623246493, 0.30060120240480964, 0.3106212424849699, 0.32064128256513025, 0.3306613226452906, 0.3406813627254509, 0.35070140280561124, 0.36072144288577157, 0.37074148296593185, 0.3807615230460922, 0.3907815631262525, 0.40080160320641284, 0.41082164328657317, 0.42084168336673344, 0.4308617234468938, 0.4408817635270541, 0.45090180360721444, 0.46092184368737477, 0.4709418837675351, 0.48096192384769537, 0.4909819639278557, 0.501002004008016, 0.5110220440881763, 0.5210420841683366, 0.531062124248497, 0.5410821643286573, 0.5511022044088176, 0.561122244488978, 0.5711422845691383, 0.5811623246492986, 0.591182364729459, 0.6012024048096193, 0.6112224448897795, 0.6212424849699398, 0.6312625250501002, 0.6412825651302605, 0.6513026052104208, 0.6613226452905812, 0.6713426853707415, 0.6813627254509018, 0.6913827655310621, 0.7014028056112225, 0.7114228456913828, 0.7214428857715431, 0.7314629258517034, 0.7414829659318637, 0.751503006012024, 0.7615230460921844, 0.7715430861723447, 0.781563126252505, 0.7915831663326653, 0.8016032064128257, 0.811623246492986, 0.8216432865731463, 0.8316633266533067, 0.8416833667334669, 0.8517034068136272, 0.8617234468937875, 0.8717434869739479, 0.8817635270541082, 0.8917835671342685, 0.9018036072144289, 0.9118236472945892, 0.9218436873747495, 0.9318637274549099, 0.9418837675350702, 0.9519038076152304, 0.9619238476953907, 0.9719438877755511, 0.9819639278557114, 0.9919839679358717, 1.002004008016032, 1.0120240480961924, 1.0220440881763526, 1.032064128256513, 1.0420841683366733, 1.0521042084168337, 1.062124248496994, 1.0721442885771544, 1.0821643286573146, 1.092184368737475, 1.1022044088176353, 1.1122244488977955, 1.122244488977956, 1.1322645290581161, 1.1422845691382766, 1.1523046092184368, 1.1623246492985972, 1.1723446893787575, 1.182364729458918, 1.1923847695390781, 1.2024048096192386, 1.2124248496993988, 1.222444889779559, 1.2324649298597194, 1.2424849699398797, 1.25250501002004, 1.2625250501002003, 1.2725450901803608, 1.282565130260521, 1.2925851703406814, 1.3026052104208417, 1.312625250501002, 1.3226452905811623, 1.3326653306613228, 1.342685370741483, 1.3527054108216432, 1.3627254509018036, 1.3727454909819639, 1.3827655310621243, 1.3927855711422845, 1.402805611222445, 1.4128256513026052, 1.4228456913827656, 1.4328657314629258, 1.4428857715430863, 1.4529058116232465, 1.4629258517034067, 1.4729458917835672, 1.4829659318637274, 1.4929859719438878, 1.503006012024048, 1.5130260521042085, 1.5230460921843687, 1.5330661322645291, 1.5430861723446894, 1.5531062124248498, 1.56312625250501, 1.5731462925851702, 1.5831663326653307, 1.593186372745491, 1.6032064128256514, 1.6132264529058116, 1.623246492985972, 1.6332665330661322, 1.6432865731462927, 1.653306613226453, 1.6633266533066133, 1.6733466933867736, 1.6833667334669338, 1.6933867735470942, 1.7034068136272544, 1.7134268537074149, 1.723446893787575, 1.7334669338677355, 1.7434869739478958, 1.7535070140280562, 1.7635270541082164, 1.7735470941883769, 1.783567134268537, 1.7935871743486973, 1.8036072144288577, 1.813627254509018, 1.8236472945891784, 1.8336673346693386, 1.843687374749499, 1.8537074148296593, 1.8637274549098197, 1.87374749498998, 1.8837675350701404, 1.8937875751503006, 1.9038076152304608, 1.9138276553106213, 1.9238476953907815, 1.933867735470942, 1.9438877755511021, 1.9539078156312626, 1.9639278557114228, 1.9739478957915833, 1.9839679358717435, 1.993987975951904, 2.004008016032064, 2.0140280561122244, 2.024048096192385, 2.0340681362725452, 2.0440881763527052, 2.0541082164328657, 2.064128256513026, 2.0741482965931866, 2.0841683366733466, 2.094188376753507, 2.1042084168336674, 2.1142284569138274, 2.124248496993988, 2.1342685370741483, 2.1442885771543088, 2.1543086172344688, 2.164328657314629, 2.1743486973947896, 2.18436873747495, 2.19438877755511, 2.2044088176352705, 2.214428857715431, 2.224448897795591, 2.2344689378757514, 2.244488977955912, 2.2545090180360723, 2.2645290581162323, 2.2745490981963927, 2.284569138276553, 2.2945891783567136, 2.3046092184368736, 2.314629258517034, 2.3246492985971945, 2.3346693386773545, 2.344689378757515, 2.3547094188376754, 2.364729458917836, 2.374749498997996, 2.3847695390781563, 2.3947895791583167, 2.404809619238477, 2.414829659318637, 2.4248496993987976, 2.434869739478958, 2.444889779559118, 2.4549098196392785, 2.464929859719439, 2.4749498997995993, 2.4849699398797593, 2.49498997995992, 2.50501002004008, 2.5150300601202407, 2.5250501002004007, 2.535070140280561, 2.5450901803607215, 2.555110220440882, 2.565130260521042, 2.5751503006012024, 2.585170340681363, 2.595190380761523, 2.6052104208416833, 2.6152304609218437, 2.625250501002004, 2.635270541082164, 2.6452905811623246, 2.655310621242485, 2.6653306613226455, 2.6753507014028055, 2.685370741482966, 2.6953907815631264, 2.7054108216432864, 2.715430861723447, 2.7254509018036073, 2.7354709418837677, 2.7454909819639277, 2.755511022044088, 2.7655310621242486, 2.775551102204409, 2.785571142284569, 2.7955911823647295, 2.80561122244489, 2.81563126252505, 2.8256513026052104, 2.835671342685371, 2.8456913827655312, 2.8557114228456912, 2.8657314629258517, 2.875751503006012, 2.8857715430861726, 2.8957915831663326, 2.905811623246493, 2.9158316633266534, 2.9258517034068134, 2.935871743486974, 2.9458917835671343, 2.9559118236472948, 2.9659318637274548, 2.975951903807615, 2.9859719438877756, 2.995991983967936, 3.006012024048096, 3.0160320641282565, 3.026052104208417, 3.036072144288577, 3.0460921843687374, 3.056112224448898, 3.0661322645290583, 3.0761523046092183, 3.0861723446893787, 3.096192384769539, 3.1062124248496996, 3.1162324649298596, 3.12625250501002, 3.1362725450901805, 3.1462925851703405, 3.156312625250501, 3.1663326653306614, 3.176352705410822, 3.186372745490982, 3.1963927855711423, 3.2064128256513027, 3.216432865731463, 3.226452905811623, 3.2364729458917836, 3.246492985971944, 3.256513026052104, 3.2665330661322645, 3.276553106212425, 3.2865731462925853, 3.2965931863727453, 3.306613226452906, 3.3166332665330662, 3.3266533066132267, 3.3366733466933867, 3.346693386773547, 3.3567134268537075, 3.3667334669338675, 3.376753507014028, 3.3867735470941884, 3.396793587174349, 3.406813627254509, 3.4168336673346693, 3.4268537074148298, 3.43687374749499, 3.44689378757515, 3.4569138276553106, 3.466933867735471, 3.476953907815631, 3.4869739478957915, 3.496993987975952, 3.5070140280561124, 3.5170340681362724, 3.527054108216433, 3.5370741482965933, 3.5470941883767537, 3.5571142284569137, 3.567134268537074, 3.5771543086172346, 3.5871743486973946, 3.597194388777555, 3.6072144288577155, 3.617234468937876, 3.627254509018036, 3.6372745490981964, 3.647294589178357, 3.6573146292585172, 3.6673346693386772, 3.6773547094188377, 3.687374749498998, 3.697394789579158, 3.7074148296593186, 3.717434869739479, 3.7274549098196395, 3.7374749498997994, 3.74749498997996, 3.7575150300601203, 3.7675350701402808, 3.7775551102204408, 3.787575150300601, 3.7975951903807617, 3.8076152304609217, 3.817635270541082, 3.8276553106212425, 3.837675350701403, 3.847695390781563, 3.8577154308617234, 3.867735470941884, 3.8777555110220443, 3.8877755511022043, 3.8977955911823647, 3.907815631262525, 3.917835671342685, 3.9278557114228456, 3.937875751503006, 3.9478957915831665, 3.9579158316633265, 3.967935871743487, 3.9779559118236474, 3.987975951903808, 3.997995991983968, 4.008016032064128, 4.018036072144288, 4.028056112224449, 4.038076152304609, 4.04809619238477, 4.05811623246493, 4.0681362725450905, 4.078156312625251, 4.0881763527054105, 4.098196392785571, 4.108216432865731, 4.118236472945892, 4.128256513026052, 4.138276553106213, 4.148296593186373, 4.158316633266533, 4.168336673346693, 4.1783567134268536, 4.188376753507014, 4.198396793587174, 4.208416833667335, 4.218436873747495, 4.228456913827655, 4.238476953907815, 4.248496993987976, 4.258517034068136, 4.268537074148297, 4.278557114228457, 4.2885771543086175, 4.298597194388778, 4.3086172344689375, 4.318637274549098, 4.328657314629258, 4.338677354709419, 4.348697394789579, 4.35871743486974, 4.3687374749499, 4.37875751503006, 4.38877755511022, 4.398797595190381, 4.408817635270541, 4.4188376753507015, 4.428857715430862, 4.438877755511022, 4.448897795591182, 4.458917835671342, 4.468937875751503, 4.478957915831663, 4.488977955911824, 4.498997995991984, 4.509018036072145, 4.519038076152305, 4.529058116232465, 4.539078156312625, 4.5490981963927855, 4.559118236472946, 4.569138276553106, 4.579158316633267, 4.589178356713427, 4.599198396793587, 4.609218436873747, 4.619238476953908, 4.629258517034068, 4.6392785571142285, 4.649298597194389, 4.659318637274549, 4.669338677354709, 4.679358717434869, 4.68937875751503, 4.69939879759519, 4.709418837675351, 4.719438877755511, 4.729458917835672, 4.739478957915832, 4.749498997995992, 4.759519038076152, 4.7695390781563125, 4.779559118236473, 4.789579158316633, 4.799599198396794, 4.809619238476954, 4.819639278557114, 4.829659318637274, 4.839679358717435, 4.849699398797595, 4.859719438877756, 4.869739478957916, 4.8797595190380765, 4.889779559118236, 4.8997995991983965, 4.909819639278557, 4.919839679358717, 4.929859719438878, 4.939879759519038, 4.949899799599199, 4.959919839679359, 4.969939879759519, 4.979959919839679, 4.98997995991984, 5.0])\n", - " .range(['#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff']);\n", - " \n", - "\n", - " color_map_ccdaaef36146868055248e21512c6ab1.x = d3.scale.linear()\n", - " .domain([0.0, 5.0])\n", - " .range([0, 450 - 50]);\n", - "\n", - " color_map_ccdaaef36146868055248e21512c6ab1.legend = L.control({position: 'topright'});\n", - " color_map_ccdaaef36146868055248e21512c6ab1.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_ccdaaef36146868055248e21512c6ab1.legend.addTo(map_232b61fa3f89873aa85c6c34bb5e590f);\n", - "\n", - " color_map_ccdaaef36146868055248e21512c6ab1.xAxis = d3.svg.axis()\n", - " .scale(color_map_ccdaaef36146868055248e21512c6ab1.x)\n", - " .orient("top")\n", - " .tickSize(1)\n", - " .tickValues([0.0, '', 1.0, '', 2.0, '', 3.0, '', 4.0, '', 5.0, '']);\n", - "\n", - " color_map_ccdaaef36146868055248e21512c6ab1.svg = d3.select(".legend.leaflet-control").append("svg")\n", - " .attr("id", 'legend')\n", - " .attr("width", 450)\n", - " .attr("height", 40);\n", - "\n", - " color_map_ccdaaef36146868055248e21512c6ab1.g = color_map_ccdaaef36146868055248e21512c6ab1.svg.append("g")\n", - " .attr("class", "key")\n", - " .attr("fill", "black")\n", - " .attr("transform", "translate(25,16)");\n", - "\n", - " color_map_ccdaaef36146868055248e21512c6ab1.g.selectAll("rect")\n", - " .data(color_map_ccdaaef36146868055248e21512c6ab1.color.range().map(function(d, i) {\n", - " return {\n", - " x0: i ? color_map_ccdaaef36146868055248e21512c6ab1.x(color_map_ccdaaef36146868055248e21512c6ab1.color.domain()[i - 1]) : color_map_ccdaaef36146868055248e21512c6ab1.x.range()[0],\n", - " x1: i < color_map_ccdaaef36146868055248e21512c6ab1.color.domain().length ? color_map_ccdaaef36146868055248e21512c6ab1.x(color_map_ccdaaef36146868055248e21512c6ab1.color.domain()[i]) : color_map_ccdaaef36146868055248e21512c6ab1.x.range()[1],\n", - " z: d\n", - " };\n", - " }))\n", - " .enter().append("rect")\n", - " .attr("height", 40 - 30)\n", - " .attr("x", function(d) { return d.x0; })\n", - " .attr("width", function(d) { return d.x1 - d.x0; })\n", - " .style("fill", function(d) { return d.z; });\n", - "\n", - " color_map_ccdaaef36146868055248e21512c6ab1.g.call(color_map_ccdaaef36146868055248e21512c6ab1.xAxis).append("text")\n", - " .attr("class", "caption")\n", - " .attr("y", 21)\n", - " .attr("fill", "black")\n", - " .text("EF Rating");\n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# Use the new plot_folium_from_VEDA_STAC function\n", + "# Create custom EF scale legend only (no HTML colorbar)\n", + "\n", + "# Define EF scale categories with your specific colors\n", + "ef_categories = [\n", + " {\"color\": \"#573F5D\", \"label\": \"EF0\", \"value\": 0},\n", + " {\"color\": \"#62B5F7\", \"label\": \"EF1\", \"value\": 1},\n", + " {\"color\": \"#74F88E\", \"label\": \"EF2\", \"value\": 2},\n", + " {\"color\": \"#E9DD61\", \"label\": \"EF3\", \"value\": 3},\n", + " {\"color\": \"#EE7545\", \"label\": \"EF4\", \"value\": 4},\n", + " {\"color\": \"#FF0000\", \"label\": \"EF5\", \"value\": 5}\n", + "]\n", + "\n", + "# Create the base map using VEDA STAC\n", "m = putils.plot_folium_from_VEDA_STAC(\n", " tiles_url_template=tiles[\"tiles\"][0],\n", " center_coords=[41.31, -94.46],\n", " zoom_level=9,\n", " rescale=(vmin, vmax),\n", " colormap_name=colormap_name,\n", - " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " capitalize_cmap=False,\n", " layer_name=\"Tornado Tracks\",\n", - "# date=f\"{date}T00:00:00Z\",\n", " date=\"(March-May 2024)\",\n", " colorbar_caption=\"EF Rating\",\n", " attribution=\"VEDA - NWS DAT Tornado Tracks\",\n", " tile_name=\"Tornado Tracks (March-May 2024)\",\n", " opacity=0.8,\n", - " height=\"800px\",\n", + " height=\"890px\",\n", ")\n", "\n", + "# Remove ALL colorbars and color maps\n", + "keys_to_remove = []\n", + "for key in m._children.keys():\n", + " if 'color' in key.lower() or 'legend' in key.lower():\n", + " keys_to_remove.append(key)\n", + "for key in keys_to_remove:\n", + " del m._children[key]\n", + "\n", + "# Create custom legend with specific colors\n", + "legend_html = '''\n", + "{% macro html(this, kwargs) %}\n", + "
\n", + "

EF Rating

\n", + "'''\n", + "\n", + "for cat in ef_categories:\n", + " legend_html += f'''\n", + "
\n", + " \n", + " {cat['label']}\n", + "
\n", + " '''\n", + "\n", + "legend_html += '''\n", + "
\n", + "{% endmacro %}\n", + "'''\n", + "\n", + "# Create a MacroElement to add the legend\n", + "legend = MacroElement()\n", + "legend._template = Template(legend_html)\n", + "\n", + "# Add the legend to the map\n", + "m.get_root().add_child(legend)\n", + "\n", "# Display the map\n", "m" ] @@ -1343,9 +1425,7 @@ { "cell_type": "markdown", "id": "841fb116-8103-44b8-b897-cf5d10ac54a1", - "metadata": { - "jp-MarkdownHeadingCollapsed": true - }, + "metadata": {}, "source": [ "# Example: NWS Tornado Polygons (March-May 2024)\n", "\n", @@ -1354,7 +1434,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 6, "id": "965db310-ee99-4af3-96a8-00e63854351d", "metadata": {}, "outputs": [ @@ -2232,7 +2312,7 @@ "" ] }, - "execution_count": 7, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -2265,7 +2345,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "id": "bdba0ec8-aced-4a16-a5ad-e261aa586cfd", "metadata": {}, "outputs": [ @@ -2299,7 +2379,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "id": "f6183652-36ca-4d4f-af4e-41070e813092", "metadata": {}, "outputs": [ @@ -2325,10 +2405,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_ecf04af2968adbc4fe5431331e59c126 {\n", + " #map_3b937d2da0bb46681d04c94037d1325a {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 800.0px;\n", + " height: 890.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -2358,7 +2438,6 @@ " </script>\n", "\n", " \n", - " <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js"></script>\n", "</head>\n", "<body>\n", " \n", @@ -2379,14 +2458,91 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_ecf04af2968adbc4fe5431331e59c126" ></div>\n", - " \n", + " <div class="folium-map" id="map_3b937d2da0bb46681d04c94037d1325a" ></div>\n", + " \n", + " \n", + "<div style="\n", + " position: fixed; \n", + " bottom: 150px; \n", + " left: 1300px; \n", + " width: 120px; \n", + " height: auto; \n", + " background-color: white; \n", + " border:2px solid grey; \n", + " z-index:9999; \n", + " font-size:20px;\n", + " padding: 10px;\n", + " box-shadow: 2px 2px 6px rgba(0,0,0,0.3);\n", + " ">\n", + " <p style="margin: 0 0 10px 0; font-weight: bold; text-align: center;">EF Rating</p>\n", + "\n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #573F5D; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF0</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #62B5F7; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF1</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #74F88E; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF2</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #E9DD61; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF3</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #EE7545; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF4</span>\n", + " </div>\n", + " \n", + " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", + " <span style="background-color: #FF0000; \n", + " display: inline-block; \n", + " width: 30px; \n", + " height: 15px; \n", + " margin-right: 8px;\n", + " border: 1px solid #666;"></span>\n", + " <span style="font-weight: 600;">EF5</span>\n", + " </div>\n", + " \n", + "</div>\n", "</body>\n", "<script>\n", " \n", " \n", - " var map_ecf04af2968adbc4fe5431331e59c126 = L.map(\n", - " "map_ecf04af2968adbc4fe5431331e59c126",\n", + " var map_3b937d2da0bb46681d04c94037d1325a = L.map(\n", + " "map_3b937d2da0bb46681d04c94037d1325a",\n", " {\n", " center: [40.3, -84.05],\n", " crs: L.CRS.EPSG3857,\n", @@ -2398,13 +2554,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_ecf04af2968adbc4fe5431331e59c126);\n", + " L.control.scale().addTo(map_3b937d2da0bb46681d04c94037d1325a);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_6f8bec335ecd66e48d82f159a5253dfe = L.tileLayer(\n", + " var tile_layer_3efe0cd1092ad687f1adc7269c2a28b3 = L.tileLayer(\n", " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", " {\n", " "minZoom": 0,\n", @@ -2421,10 +2577,10 @@ " );\n", " \n", " \n", - " tile_layer_6f8bec335ecd66e48d82f159a5253dfe.addTo(map_ecf04af2968adbc4fe5431331e59c126);\n", + " tile_layer_3efe0cd1092ad687f1adc7269c2a28b3.addTo(map_3b937d2da0bb46681d04c94037d1325a);\n", " \n", " \n", - " var tile_layer_f3064cec1e3febf3b2dedde52aca3775 = L.tileLayer(\n", + " var tile_layer_80ec9fae4562bca06e1593e3450f2a42 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C5",\n", " {\n", " "minZoom": 0,\n", @@ -2441,111 +2597,112 @@ " );\n", " \n", " \n", - " tile_layer_f3064cec1e3febf3b2dedde52aca3775.addTo(map_ecf04af2968adbc4fe5431331e59c126);\n", + " tile_layer_80ec9fae4562bca06e1593e3450f2a42.addTo(map_3b937d2da0bb46681d04c94037d1325a);\n", " \n", " \n", - " var layer_control_bf3dccc77d5577d48c6d9701ac16a0d0_layers = {\n", + " var layer_control_58253d02a6fd50f3559826c20ee580b1_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_6f8bec335ecd66e48d82f159a5253dfe,\n", + " "openstreetmap" : tile_layer_3efe0cd1092ad687f1adc7269c2a28b3,\n", " },\n", " overlays : {\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_f3064cec1e3febf3b2dedde52aca3775,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_80ec9fae4562bca06e1593e3450f2a42,\n", " },\n", " };\n", - " let layer_control_bf3dccc77d5577d48c6d9701ac16a0d0 = L.control.layers(\n", - " layer_control_bf3dccc77d5577d48c6d9701ac16a0d0_layers.base_layers,\n", - " layer_control_bf3dccc77d5577d48c6d9701ac16a0d0_layers.overlays,\n", + " let layer_control_58253d02a6fd50f3559826c20ee580b1 = L.control.layers(\n", + " layer_control_58253d02a6fd50f3559826c20ee580b1_layers.base_layers,\n", + " layer_control_58253d02a6fd50f3559826c20ee580b1_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_ecf04af2968adbc4fe5431331e59c126);\n", + " ).addTo(map_3b937d2da0bb46681d04c94037d1325a);\n", "\n", " \n", - " \n", - " var color_map_aa40cf67e8fcbc9cb316be154acbbe47 = {};\n", - "\n", - " \n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.color = d3.scale.threshold()\n", - " .domain([0.0, 0.01002004008016032, 0.02004008016032064, 0.03006012024048096, 0.04008016032064128, 0.050100200400801605, 0.06012024048096192, 0.07014028056112225, 0.08016032064128256, 0.09018036072144289, 0.10020040080160321, 0.11022044088176353, 0.12024048096192384, 0.13026052104208416, 0.1402805611222445, 0.15030060120240482, 0.16032064128256512, 0.17034068136272545, 0.18036072144288579, 0.1903807615230461, 0.20040080160320642, 0.21042084168336672, 0.22044088176352705, 0.23046092184368738, 0.24048096192384769, 0.250501002004008, 0.2605210420841683, 0.27054108216432865, 0.280561122244489, 0.2905811623246493, 0.30060120240480964, 0.3106212424849699, 0.32064128256513025, 0.3306613226452906, 0.3406813627254509, 0.35070140280561124, 0.36072144288577157, 0.37074148296593185, 0.3807615230460922, 0.3907815631262525, 0.40080160320641284, 0.41082164328657317, 0.42084168336673344, 0.4308617234468938, 0.4408817635270541, 0.45090180360721444, 0.46092184368737477, 0.4709418837675351, 0.48096192384769537, 0.4909819639278557, 0.501002004008016, 0.5110220440881763, 0.5210420841683366, 0.531062124248497, 0.5410821643286573, 0.5511022044088176, 0.561122244488978, 0.5711422845691383, 0.5811623246492986, 0.591182364729459, 0.6012024048096193, 0.6112224448897795, 0.6212424849699398, 0.6312625250501002, 0.6412825651302605, 0.6513026052104208, 0.6613226452905812, 0.6713426853707415, 0.6813627254509018, 0.6913827655310621, 0.7014028056112225, 0.7114228456913828, 0.7214428857715431, 0.7314629258517034, 0.7414829659318637, 0.751503006012024, 0.7615230460921844, 0.7715430861723447, 0.781563126252505, 0.7915831663326653, 0.8016032064128257, 0.811623246492986, 0.8216432865731463, 0.8316633266533067, 0.8416833667334669, 0.8517034068136272, 0.8617234468937875, 0.8717434869739479, 0.8817635270541082, 0.8917835671342685, 0.9018036072144289, 0.9118236472945892, 0.9218436873747495, 0.9318637274549099, 0.9418837675350702, 0.9519038076152304, 0.9619238476953907, 0.9719438877755511, 0.9819639278557114, 0.9919839679358717, 1.002004008016032, 1.0120240480961924, 1.0220440881763526, 1.032064128256513, 1.0420841683366733, 1.0521042084168337, 1.062124248496994, 1.0721442885771544, 1.0821643286573146, 1.092184368737475, 1.1022044088176353, 1.1122244488977955, 1.122244488977956, 1.1322645290581161, 1.1422845691382766, 1.1523046092184368, 1.1623246492985972, 1.1723446893787575, 1.182364729458918, 1.1923847695390781, 1.2024048096192386, 1.2124248496993988, 1.222444889779559, 1.2324649298597194, 1.2424849699398797, 1.25250501002004, 1.2625250501002003, 1.2725450901803608, 1.282565130260521, 1.2925851703406814, 1.3026052104208417, 1.312625250501002, 1.3226452905811623, 1.3326653306613228, 1.342685370741483, 1.3527054108216432, 1.3627254509018036, 1.3727454909819639, 1.3827655310621243, 1.3927855711422845, 1.402805611222445, 1.4128256513026052, 1.4228456913827656, 1.4328657314629258, 1.4428857715430863, 1.4529058116232465, 1.4629258517034067, 1.4729458917835672, 1.4829659318637274, 1.4929859719438878, 1.503006012024048, 1.5130260521042085, 1.5230460921843687, 1.5330661322645291, 1.5430861723446894, 1.5531062124248498, 1.56312625250501, 1.5731462925851702, 1.5831663326653307, 1.593186372745491, 1.6032064128256514, 1.6132264529058116, 1.623246492985972, 1.6332665330661322, 1.6432865731462927, 1.653306613226453, 1.6633266533066133, 1.6733466933867736, 1.6833667334669338, 1.6933867735470942, 1.7034068136272544, 1.7134268537074149, 1.723446893787575, 1.7334669338677355, 1.7434869739478958, 1.7535070140280562, 1.7635270541082164, 1.7735470941883769, 1.783567134268537, 1.7935871743486973, 1.8036072144288577, 1.813627254509018, 1.8236472945891784, 1.8336673346693386, 1.843687374749499, 1.8537074148296593, 1.8637274549098197, 1.87374749498998, 1.8837675350701404, 1.8937875751503006, 1.9038076152304608, 1.9138276553106213, 1.9238476953907815, 1.933867735470942, 1.9438877755511021, 1.9539078156312626, 1.9639278557114228, 1.9739478957915833, 1.9839679358717435, 1.993987975951904, 2.004008016032064, 2.0140280561122244, 2.024048096192385, 2.0340681362725452, 2.0440881763527052, 2.0541082164328657, 2.064128256513026, 2.0741482965931866, 2.0841683366733466, 2.094188376753507, 2.1042084168336674, 2.1142284569138274, 2.124248496993988, 2.1342685370741483, 2.1442885771543088, 2.1543086172344688, 2.164328657314629, 2.1743486973947896, 2.18436873747495, 2.19438877755511, 2.2044088176352705, 2.214428857715431, 2.224448897795591, 2.2344689378757514, 2.244488977955912, 2.2545090180360723, 2.2645290581162323, 2.2745490981963927, 2.284569138276553, 2.2945891783567136, 2.3046092184368736, 2.314629258517034, 2.3246492985971945, 2.3346693386773545, 2.344689378757515, 2.3547094188376754, 2.364729458917836, 2.374749498997996, 2.3847695390781563, 2.3947895791583167, 2.404809619238477, 2.414829659318637, 2.4248496993987976, 2.434869739478958, 2.444889779559118, 2.4549098196392785, 2.464929859719439, 2.4749498997995993, 2.4849699398797593, 2.49498997995992, 2.50501002004008, 2.5150300601202407, 2.5250501002004007, 2.535070140280561, 2.5450901803607215, 2.555110220440882, 2.565130260521042, 2.5751503006012024, 2.585170340681363, 2.595190380761523, 2.6052104208416833, 2.6152304609218437, 2.625250501002004, 2.635270541082164, 2.6452905811623246, 2.655310621242485, 2.6653306613226455, 2.6753507014028055, 2.685370741482966, 2.6953907815631264, 2.7054108216432864, 2.715430861723447, 2.7254509018036073, 2.7354709418837677, 2.7454909819639277, 2.755511022044088, 2.7655310621242486, 2.775551102204409, 2.785571142284569, 2.7955911823647295, 2.80561122244489, 2.81563126252505, 2.8256513026052104, 2.835671342685371, 2.8456913827655312, 2.8557114228456912, 2.8657314629258517, 2.875751503006012, 2.8857715430861726, 2.8957915831663326, 2.905811623246493, 2.9158316633266534, 2.9258517034068134, 2.935871743486974, 2.9458917835671343, 2.9559118236472948, 2.9659318637274548, 2.975951903807615, 2.9859719438877756, 2.995991983967936, 3.006012024048096, 3.0160320641282565, 3.026052104208417, 3.036072144288577, 3.0460921843687374, 3.056112224448898, 3.0661322645290583, 3.0761523046092183, 3.0861723446893787, 3.096192384769539, 3.1062124248496996, 3.1162324649298596, 3.12625250501002, 3.1362725450901805, 3.1462925851703405, 3.156312625250501, 3.1663326653306614, 3.176352705410822, 3.186372745490982, 3.1963927855711423, 3.2064128256513027, 3.216432865731463, 3.226452905811623, 3.2364729458917836, 3.246492985971944, 3.256513026052104, 3.2665330661322645, 3.276553106212425, 3.2865731462925853, 3.2965931863727453, 3.306613226452906, 3.3166332665330662, 3.3266533066132267, 3.3366733466933867, 3.346693386773547, 3.3567134268537075, 3.3667334669338675, 3.376753507014028, 3.3867735470941884, 3.396793587174349, 3.406813627254509, 3.4168336673346693, 3.4268537074148298, 3.43687374749499, 3.44689378757515, 3.4569138276553106, 3.466933867735471, 3.476953907815631, 3.4869739478957915, 3.496993987975952, 3.5070140280561124, 3.5170340681362724, 3.527054108216433, 3.5370741482965933, 3.5470941883767537, 3.5571142284569137, 3.567134268537074, 3.5771543086172346, 3.5871743486973946, 3.597194388777555, 3.6072144288577155, 3.617234468937876, 3.627254509018036, 3.6372745490981964, 3.647294589178357, 3.6573146292585172, 3.6673346693386772, 3.6773547094188377, 3.687374749498998, 3.697394789579158, 3.7074148296593186, 3.717434869739479, 3.7274549098196395, 3.7374749498997994, 3.74749498997996, 3.7575150300601203, 3.7675350701402808, 3.7775551102204408, 3.787575150300601, 3.7975951903807617, 3.8076152304609217, 3.817635270541082, 3.8276553106212425, 3.837675350701403, 3.847695390781563, 3.8577154308617234, 3.867735470941884, 3.8777555110220443, 3.8877755511022043, 3.8977955911823647, 3.907815631262525, 3.917835671342685, 3.9278557114228456, 3.937875751503006, 3.9478957915831665, 3.9579158316633265, 3.967935871743487, 3.9779559118236474, 3.987975951903808, 3.997995991983968, 4.008016032064128, 4.018036072144288, 4.028056112224449, 4.038076152304609, 4.04809619238477, 4.05811623246493, 4.0681362725450905, 4.078156312625251, 4.0881763527054105, 4.098196392785571, 4.108216432865731, 4.118236472945892, 4.128256513026052, 4.138276553106213, 4.148296593186373, 4.158316633266533, 4.168336673346693, 4.1783567134268536, 4.188376753507014, 4.198396793587174, 4.208416833667335, 4.218436873747495, 4.228456913827655, 4.238476953907815, 4.248496993987976, 4.258517034068136, 4.268537074148297, 4.278557114228457, 4.2885771543086175, 4.298597194388778, 4.3086172344689375, 4.318637274549098, 4.328657314629258, 4.338677354709419, 4.348697394789579, 4.35871743486974, 4.3687374749499, 4.37875751503006, 4.38877755511022, 4.398797595190381, 4.408817635270541, 4.4188376753507015, 4.428857715430862, 4.438877755511022, 4.448897795591182, 4.458917835671342, 4.468937875751503, 4.478957915831663, 4.488977955911824, 4.498997995991984, 4.509018036072145, 4.519038076152305, 4.529058116232465, 4.539078156312625, 4.5490981963927855, 4.559118236472946, 4.569138276553106, 4.579158316633267, 4.589178356713427, 4.599198396793587, 4.609218436873747, 4.619238476953908, 4.629258517034068, 4.6392785571142285, 4.649298597194389, 4.659318637274549, 4.669338677354709, 4.679358717434869, 4.68937875751503, 4.69939879759519, 4.709418837675351, 4.719438877755511, 4.729458917835672, 4.739478957915832, 4.749498997995992, 4.759519038076152, 4.7695390781563125, 4.779559118236473, 4.789579158316633, 4.799599198396794, 4.809619238476954, 4.819639278557114, 4.829659318637274, 4.839679358717435, 4.849699398797595, 4.859719438877756, 4.869739478957916, 4.8797595190380765, 4.889779559118236, 4.8997995991983965, 4.909819639278557, 4.919839679358717, 4.929859719438878, 4.939879759519038, 4.949899799599199, 4.959919839679359, 4.969939879759519, 4.979959919839679, 4.98997995991984, 5.0])\n", - " .range(['#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff']);\n", - " \n", - "\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.x = d3.scale.linear()\n", - " .domain([0.0, 5.0])\n", - " .range([0, 450 - 50]);\n", - "\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.legend = L.control({position: 'topright'});\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.legend.addTo(map_ecf04af2968adbc4fe5431331e59c126);\n", - "\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.xAxis = d3.svg.axis()\n", - " .scale(color_map_aa40cf67e8fcbc9cb316be154acbbe47.x)\n", - " .orient("top")\n", - " .tickSize(1)\n", - " .tickValues([0.0, '', 1.0, '', 2.0, '', 3.0, '', 4.0, '', 5.0, '']);\n", - "\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.svg = d3.select(".legend.leaflet-control").append("svg")\n", - " .attr("id", 'legend')\n", - " .attr("width", 450)\n", - " .attr("height", 40);\n", - "\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.g = color_map_aa40cf67e8fcbc9cb316be154acbbe47.svg.append("g")\n", - " .attr("class", "key")\n", - " .attr("fill", "black")\n", - " .attr("transform", "translate(25,16)");\n", - "\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.g.selectAll("rect")\n", - " .data(color_map_aa40cf67e8fcbc9cb316be154acbbe47.color.range().map(function(d, i) {\n", - " return {\n", - " x0: i ? color_map_aa40cf67e8fcbc9cb316be154acbbe47.x(color_map_aa40cf67e8fcbc9cb316be154acbbe47.color.domain()[i - 1]) : color_map_aa40cf67e8fcbc9cb316be154acbbe47.x.range()[0],\n", - " x1: i < color_map_aa40cf67e8fcbc9cb316be154acbbe47.color.domain().length ? color_map_aa40cf67e8fcbc9cb316be154acbbe47.x(color_map_aa40cf67e8fcbc9cb316be154acbbe47.color.domain()[i]) : color_map_aa40cf67e8fcbc9cb316be154acbbe47.x.range()[1],\n", - " z: d\n", - " };\n", - " }))\n", - " .enter().append("rect")\n", - " .attr("height", 40 - 30)\n", - " .attr("x", function(d) { return d.x0; })\n", - " .attr("width", function(d) { return d.x1 - d.x0; })\n", - " .style("fill", function(d) { return d.z; });\n", - "\n", - " color_map_aa40cf67e8fcbc9cb316be154acbbe47.g.call(color_map_aa40cf67e8fcbc9cb316be154acbbe47.xAxis).append("text")\n", - " .attr("class", "caption")\n", - " .attr("y", 21)\n", - " .attr("fill", "black")\n", - " .text("EF Rating");\n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 9, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# Use the new plot_folium_from_VEDA_STAC function\n", + "# Use custom colorscale for EF categories\n", + "\n", + "# Create the base map using VEDA STAC\n", "m = putils.plot_folium_from_VEDA_STAC(\n", " tiles_url_template=tiles[\"tiles\"][0],\n", " center_coords=[40.30, -84.05],\n", " zoom_level=10.25,\n", " rescale=(vmin, vmax),\n", " colormap_name=colormap_name,\n", - " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " capitalize_cmap=False,\n", " layer_name=\"Tornado Tracks [Polygons]\",\n", - "# date=f\"{date}T00:00:00Z\",\n", " date=\"(March-May 2024)\",\n", " colorbar_caption=\"EF Rating\",\n", " attribution=\"VEDA - NWS DAT Tornado Polygons\",\n", " tile_name=\"Tornado Tracks [Polygons] (March-May 2024)\",\n", " opacity=0.8,\n", - " height=\"800px\",\n", + " height=\"890px\",\n", ")\n", "\n", + "# Remove ALL colorbars and color maps\n", + "keys_to_remove = []\n", + "for key in m._children.keys():\n", + " if 'color' in key.lower() or 'legend' in key.lower():\n", + " keys_to_remove.append(key)\n", + "for key in keys_to_remove:\n", + " del m._children[key]\n", + "\n", + "# Create custom legend with specific colors\n", + "legend_html = '''\n", + "{% macro html(this, kwargs) %}\n", + "
\n", + "

EF Rating

\n", + "'''\n", + "\n", + "for cat in ef_categories:\n", + " legend_html += f'''\n", + "
\n", + " \n", + " {cat['label']}\n", + "
\n", + " '''\n", + "\n", + "legend_html += '''\n", + "
\n", + "{% endmacro %}\n", + "'''\n", + "\n", + "# Create a MacroElement to add the legend\n", + "legend = MacroElement()\n", + "legend._template = Template(legend_html)\n", + "\n", + "# Add the legend to the map\n", + "m.get_root().add_child(legend)\n", + "\n", "# Display the map\n", "m" ] @@ -2553,9 +2710,7 @@ { "cell_type": "markdown", "id": "f2bfc2b9-27a1-4ec3-8bfa-e527ecc20a73", - "metadata": { - "jp-MarkdownHeadingCollapsed": true - }, + "metadata": {}, "source": [ "# Example: Black Marble Nightlights\n", "\n", @@ -2567,12 +2722,12 @@ "id": "257cac61-d592-4fa0-b7a7-3c14db93a9f0", "metadata": {}, "source": [ - "NASA’s Black Marble night lights dataset provides satellite images of Earth at night, capturing the light pollution from cities, roads, and other human activity. These images are collected by the Visible Infrared Imaging Radiometer Suite (VIIRS) sensor on the Suomi National Polar-orbiting Partnership (NPP) satellite, and can be used to examine changes in illumination over time. In this story, night lights data is used to assess changes before and after a tornado impacts a town, highlighting areas affected by power outages that may cause recovery slowdowns.\n" + "NASA's Black Marble night lights dataset provides satellite images of Earth at night, capturing the light pollution from cities, roads, and other human activity. These images are collected by the Visible Infrared Imaging Radiometer Suite (VIIRS) sensor on the Suomi National Polar-orbiting Partnership (NPP) satellite, and can be used to examine changes in illumination over time. In this story, night lights data is used to assess changes before and after a tornado impacts a town, highlighting areas affected by power outages that may cause recovery slowdowns.\n" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 9, "id": "d55ccd28-c8ba-47cf-bfd3-03c3a8cd5beb", "metadata": {}, "outputs": [ @@ -3503,7 +3658,7 @@ "" ] }, - "execution_count": 10, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -3535,7 +3690,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 10, "id": "6b3f9709-09bc-43ef-b3fd-d89f3c0cd5e9", "metadata": {}, "outputs": [ @@ -3569,7 +3724,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 11, "id": "f283977b-e862-4f2d-9032-414d974a35b4", "metadata": {}, "outputs": [ @@ -3602,10 +3757,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_fbdc86c16c6d5c2d938c98d48c26ff55 {\n", + " #map_3c1ae2f5c9bc907d7c106337b643bed8 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 800.0px;\n", + " height: 890.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -3656,14 +3811,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_fbdc86c16c6d5c2d938c98d48c26ff55" ></div>\n", + " <div class="folium-map" id="map_3c1ae2f5c9bc907d7c106337b643bed8" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_fbdc86c16c6d5c2d938c98d48c26ff55 = L.map(\n", - " "map_fbdc86c16c6d5c2d938c98d48c26ff55",\n", + " var map_3c1ae2f5c9bc907d7c106337b643bed8 = L.map(\n", + " "map_3c1ae2f5c9bc907d7c106337b643bed8",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -3675,13 +3830,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_fbdc86c16c6d5c2d938c98d48c26ff55);\n", + " L.control.scale().addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_ba2ecba7c1c854e7bb6aec410fb867f8 = L.tileLayer(\n", + " var tile_layer_f33f2dca22f244b55184b78988eb25f9 = L.tileLayer(\n", " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", " {\n", " "minZoom": 0,\n", @@ -3698,10 +3853,10 @@ " );\n", " \n", " \n", - " tile_layer_ba2ecba7c1c854e7bb6aec410fb867f8.addTo(map_fbdc86c16c6d5c2d938c98d48c26ff55);\n", + " tile_layer_f33f2dca22f244b55184b78988eb25f9.addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", " \n", " \n", - " var tile_layer_7452bf6cfeb09c4ce8f92dd8350be637 = L.tileLayer(\n", + " var tile_layer_7c504be5cd42f50d04e200284b77ca5f = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", @@ -3718,66 +3873,66 @@ " );\n", " \n", " \n", - " tile_layer_7452bf6cfeb09c4ce8f92dd8350be637.addTo(map_fbdc86c16c6d5c2d938c98d48c26ff55);\n", + " tile_layer_7c504be5cd42f50d04e200284b77ca5f.addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", " \n", " \n", - " var layer_control_1a5b6b0e85a12a905719e52b9ed894d7_layers = {\n", + " var layer_control_c30af4de7b87eda65b6e0aa4676f94eb_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_ba2ecba7c1c854e7bb6aec410fb867f8,\n", + " "openstreetmap" : tile_layer_f33f2dca22f244b55184b78988eb25f9,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights" : tile_layer_7452bf6cfeb09c4ce8f92dd8350be637,\n", + " "Black Marble Nightlights" : tile_layer_7c504be5cd42f50d04e200284b77ca5f,\n", " },\n", " };\n", - " let layer_control_1a5b6b0e85a12a905719e52b9ed894d7 = L.control.layers(\n", - " layer_control_1a5b6b0e85a12a905719e52b9ed894d7_layers.base_layers,\n", - " layer_control_1a5b6b0e85a12a905719e52b9ed894d7_layers.overlays,\n", + " let layer_control_c30af4de7b87eda65b6e0aa4676f94eb = L.control.layers(\n", + " layer_control_c30af4de7b87eda65b6e0aa4676f94eb_layers.base_layers,\n", + " layer_control_c30af4de7b87eda65b6e0aa4676f94eb_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_fbdc86c16c6d5c2d938c98d48c26ff55);\n", + " ).addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", "\n", " \n", " \n", - " var color_map_d22b28cd09ac20f0dabf4415ccb6790f = {};\n", + " var color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae = {};\n", "\n", " \n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.color = d3.scale.threshold()\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color = d3.scale.threshold()\n", " .domain([-150.0, -149.3987975951904, -148.79759519038078, -148.19639278557113, -147.59519038076152, -146.9939879759519, -146.3927855711423, -145.79158316633266, -145.19038076152304, -144.58917835671343, -143.98797595190382, -143.38677354709418, -142.78557114228457, -142.18436873747495, -141.58316633266534, -140.9819639278557, -140.3807615230461, -139.77955911823648, -139.17835671342687, -138.57715430861722, -137.9759519038076, -137.374749498998, -136.7735470941884, -136.17234468937875, -135.57114228456913, -134.96993987975952, -134.3687374749499, -133.76753507014027, -133.16633266533066, -132.56513026052104, -131.96392785571143, -131.3627254509018, -130.76152304609218, -130.16032064128257, -129.55911823647295, -128.95791583166334, -128.3567134268537, -127.75551102204409, -127.15430861723448, -126.55310621242485, -125.95190380761522, -125.35070140280561, -124.749498997996, -124.14829659318637, -123.54709418837675, -122.94589178356713, -122.34468937875752, -121.7434869739479, -121.14228456913827, -120.54108216432866, -119.93987975951904, -119.33867735470942, -118.73747494989979, -118.13627254509018, -117.53507014028057, -116.93386773547094, -116.33266533066131, -115.7314629258517, -115.13026052104209, -114.52905811623246, -113.92785571142284, -113.32665330661322, -112.72545090180361, -112.12424849699399, -111.52304609218436, -110.92184368737475, -110.32064128256513, -109.71943887775551, -109.11823647294588, -108.51703406813627, -107.91583166332666, -107.31462925851704, -106.71342685370742, -106.11222444889779, -105.51102204408818, -104.90981963927857, -104.30861723446894, -103.70741482965931, -103.1062124248497, -102.50501002004009, -101.90380761523046, -101.30260521042084, -100.70140280561122, -100.10020040080161, -99.49899799599199, -98.89779559118236, -98.29659318637275, -97.69539078156313, -97.09418837675351, -96.49298597194388, -95.89178356713427, -95.29058116232466, -94.68937875751503, -94.0881763527054, -93.48697394789579, -92.88577154308618, -92.28456913827655, -91.68336673346693, -91.08216432865731, -90.4809619238477, -89.87975951903807, -89.27855711422845, -88.67735470941884, -88.07615230460922, -87.4749498997996, -86.87374749498997, -86.27254509018036, -85.67134268537075, -85.07014028056112, -84.46893787575151, -83.86773547094188, -83.26653306613227, -82.66533066132264, -82.06412825651303, -81.4629258517034, -80.86172344689379, -80.26052104208416, -79.65931863727455, -79.05811623246493, -78.45691382765531, -77.85571142284569, -77.25450901803607, -76.65330661322645, -76.05210420841684, -75.45090180360721, -74.8496993987976, -74.24849699398797, -73.64729458917836, -73.04609218436873, -72.44488977955912, -71.84368737474949, -71.24248496993988, -70.64128256513025, -70.04008016032064, -69.43887775551102, -68.8376753507014, -68.23647294589178, -67.63527054108216, -67.03406813627255, -66.43286573146293, -65.83166332665331, -65.23046092184369, -64.62925851703407, -64.02805611222445, -63.426853707414836, -62.82565130260521, -62.2244488977956, -61.62324649298597, -61.02204408817636, -60.42084168336673, -59.81963927855712, -59.21843687374749, -58.61723446893788, -58.016032064128254, -57.41482965931864, -56.813627254509015, -56.2124248496994, -55.611222444889776, -55.010020040080164, -54.40881763527054, -53.807615230460925, -53.2064128256513, -52.605210420841686, -52.00400801603206, -51.40280561122245, -50.80160320641282, -50.20040080160321, -49.59919839679358, -48.99799599198397, -48.39679358717434, -47.79559118236473, -47.194388777555105, -46.59318637274549, -45.991983967935866, -45.390781563126254, -44.78957915831663, -44.188376753507015, -43.58717434869739, -42.985971943887776, -42.38476953907815, -41.78356713426854, -41.18236472945891, -40.5811623246493, -39.979959919839686, -39.37875751503006, -38.77755511022045, -38.17635270541082, -37.57515030060121, -36.97394789579158, -36.37274549098197, -35.77154308617234, -35.17034068136273, -34.569138276553105, -33.96793587174349, -33.366733466933866, -32.76553106212425, -32.16432865731463, -31.563126252505015, -30.961923847695388, -30.360721442885776, -29.75951903807615, -29.158316633266537, -28.55711422845691, -27.9559118236473, -27.354709418837672, -26.75350701402806, -26.152304609218433, -25.55110220440882, -24.949899799599194, -24.348697394789582, -23.747494989979955, -23.146292585170343, -22.545090180360717, -21.943887775551104, -21.342685370741492, -20.74148296593185, -20.14028056112224, -19.539078156312627, -18.937875751503014, -18.336673346693374, -17.73547094188376, -17.13426853707415, -16.533066132264537, -15.931863727454896, -15.330661322645284, -14.729458917835672, -14.12825651302606, -13.527054108216447, -12.925851703406806, -12.324649298597194, -11.723446893787582, -11.12224448897797, -10.521042084168329, -9.919839679358716, -9.318637274549104, -8.717434869739492, -8.116232464929851, -7.515030060120239, -6.913827655310627, -6.312625250501014, -5.711422845691374, -5.110220440881761, -4.509018036072149, -3.9078156312625367, -3.306613226452896, -2.7054108216432837, -2.1042084168336714, -1.5030060120240591, -0.9018036072144184, -0.30060120240480614, 0.30060120240480614, 0.9018036072144184, 1.5030060120240591, 2.1042084168336714, 2.7054108216432837, 3.306613226452896, 3.9078156312625367, 4.509018036072149, 5.110220440881761, 5.711422845691374, 6.312625250501014, 6.913827655310627, 7.515030060120239, 8.116232464929851, 8.717434869739492, 9.318637274549104, 9.919839679358716, 10.521042084168329, 11.12224448897797, 11.723446893787582, 12.324649298597194, 12.925851703406806, 13.527054108216447, 14.12825651302606, 14.729458917835672, 15.330661322645284, 15.931863727454896, 16.533066132264537, 17.13426853707415, 17.73547094188376, 18.336673346693374, 18.937875751503014, 19.539078156312627, 20.14028056112224, 20.74148296593185, 21.342685370741492, 21.943887775551104, 22.545090180360717, 23.14629258517033, 23.74749498997997, 24.348697394789582, 24.949899799599194, 25.551102204408807, 26.152304609218447, 26.75350701402806, 27.354709418837672, 27.955911823647284, 28.557114228456925, 29.158316633266537, 29.75951903807615, 30.36072144288576, 30.961923847695402, 31.563126252505015, 32.16432865731463, 32.76553106212424, 33.36673346693388, 33.96793587174349, 34.569138276553105, 35.17034068136272, 35.77154308617236, 36.37274549098197, 36.97394789579158, 37.575150300601194, 38.176352705410835, 38.77755511022045, 39.37875751503006, 39.97995991983967, 40.58116232464931, 41.182364729458925, 41.78356713426854, 42.38476953907815, 42.98597194388776, 43.5871743486974, 44.188376753507015, 44.78957915831663, 45.39078156312624, 45.99198396793588, 46.59318637274549, 47.194388777555105, 47.79559118236472, 48.39679358717436, 48.99799599198397, 49.59919839679358, 50.200400801603195, 50.801603206412835, 51.40280561122245, 52.00400801603206, 52.60521042084167, 53.20641282565131, 53.807615230460925, 54.40881763527054, 55.01002004008015, 55.61122244488979, 56.2124248496994, 56.813627254509015, 57.41482965931863, 58.01603206412827, 58.61723446893788, 59.21843687374749, 59.819639278557105, 60.420841683366746, 61.02204408817636, 61.62324649298597, 62.22444889779558, 62.82565130260522, 63.426853707414836, 64.02805611222445, 64.62925851703406, 65.2304609218437, 65.83166332665331, 66.43286573146293, 67.03406813627254, 67.63527054108218, 68.23647294589179, 68.8376753507014, 69.43887775551102, 70.04008016032063, 70.64128256513027, 71.24248496993988, 71.84368737474949, 72.4448897795591, 73.04609218436875, 73.64729458917836, 74.24849699398797, 74.84969939879758, 75.45090180360722, 76.05210420841684, 76.65330661322645, 77.25450901803606, 77.8557114228457, 78.45691382765531, 79.05811623246493, 79.65931863727454, 80.26052104208418, 80.86172344689379, 81.4629258517034, 82.06412825651302, 82.66533066132266, 83.26653306613227, 83.86773547094188, 84.4689378757515, 85.07014028056113, 85.67134268537075, 86.27254509018036, 86.87374749498997, 87.47494989979961, 88.07615230460922, 88.67735470941884, 89.27855711422845, 89.87975951903809, 90.4809619238477, 91.08216432865731, 91.68336673346693, 92.28456913827657, 92.88577154308618, 93.48697394789579, 94.0881763527054, 94.68937875751504, 95.29058116232466, 95.89178356713427, 96.49298597194388, 97.0941883767535, 97.69539078156313, 98.29659318637275, 98.89779559118236, 99.49899799599197, 100.10020040080161, 100.70140280561122, 101.30260521042084, 101.90380761523045, 102.50501002004009, 103.1062124248497, 103.70741482965931, 104.30861723446893, 104.90981963927857, 105.51102204408818, 106.11222444889779, 106.7134268537074, 107.31462925851702, 107.91583166332663, 108.5170340681363, 109.11823647294591, 109.71943887775552, 110.32064128256513, 110.92184368737475, 111.52304609218436, 112.12424849699397, 112.72545090180358, 113.32665330661325, 113.92785571142286, 114.52905811623248, 115.13026052104209, 115.7314629258517, 116.33266533066131, 116.93386773547093, 117.53507014028054, 118.13627254509021, 118.73747494989982, 119.33867735470943, 119.93987975951904, 120.54108216432866, 121.14228456913827, 121.74348697394788, 122.3446893787575, 122.9458917835671, 123.54709418837678, 124.14829659318639, 124.749498997996, 125.35070140280561, 125.95190380761522, 126.55310621242484, 127.15430861723445, 127.75551102204406, 128.35671342685373, 128.95791583166334, 129.55911823647295, 130.16032064128257, 130.76152304609218, 131.3627254509018, 131.9639278557114, 132.56513026052102, 133.16633266533069, 133.7675350701403, 134.3687374749499, 134.96993987975952, 135.57114228456913, 136.17234468937875, 136.77354709418836, 137.37474949899797, 137.97595190380764, 138.57715430861725, 139.17835671342687, 139.77955911823648, 140.3807615230461, 140.9819639278557, 141.58316633266531, 142.18436873747493, 142.7855711422846, 143.3867735470942, 143.98797595190382, 144.58917835671343, 145.19038076152304, 145.79158316633266, 146.39278557114227, 146.99398797595188, 147.59519038076155, 148.19639278557116, 148.79759519038078, 149.3987975951904, 150.0])\n", " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", " \n", "\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.x = d3.scale.linear()\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x = d3.scale.linear()\n", " .domain([-150.0, 150.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.legend = L.control({position: 'topright'});\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.legend.addTo(map_fbdc86c16c6d5c2d938c98d48c26ff55);\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.legend = L.control({position: 'topright'});\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.legend.addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", "\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.xAxis = d3.svg.axis()\n", - " .scale(color_map_d22b28cd09ac20f0dabf4415ccb6790f.x)\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.xAxis = d3.svg.axis()\n", + " .scale(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([-150.0, '', -90.0, '', -30.0, '', 30.0, '', 90.0, '', 150.0, '']);\n", "\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.g = color_map_d22b28cd09ac20f0dabf4415ccb6790f.svg.append("g")\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.g = color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.g.selectAll("rect")\n", - " .data(color_map_d22b28cd09ac20f0dabf4415ccb6790f.color.range().map(function(d, i) {\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.g.selectAll("rect")\n", + " .data(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_d22b28cd09ac20f0dabf4415ccb6790f.x(color_map_d22b28cd09ac20f0dabf4415ccb6790f.color.domain()[i - 1]) : color_map_d22b28cd09ac20f0dabf4415ccb6790f.x.range()[0],\n", - " x1: i < color_map_d22b28cd09ac20f0dabf4415ccb6790f.color.domain().length ? color_map_d22b28cd09ac20f0dabf4415ccb6790f.x(color_map_d22b28cd09ac20f0dabf4415ccb6790f.color.domain()[i]) : color_map_d22b28cd09ac20f0dabf4415ccb6790f.x.range()[1],\n", + " x0: i ? color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color.domain()[i - 1]) : color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x.range()[0],\n", + " x1: i < color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color.domain().length ? color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color.domain()[i]) : color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -3787,7 +3942,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_d22b28cd09ac20f0dabf4415ccb6790f.g.call(color_map_d22b28cd09ac20f0dabf4415ccb6790f.xAxis).append("text")\n", + " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.g.call(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -3796,10 +3951,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 12, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } @@ -3819,7 +3974,7 @@ " attribution=\"VEDA Black Marble Nightlights\",\n", " tile_name=\"Black Marble Nightlights\",\n", " opacity=0.8,\n", - " height=\"800px\",\n", + " height=\"890px\",\n", ")\n", "\n", "print(\n", @@ -3850,7 +4005,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 12, "id": "7213b9f2-8444-462b-a994-3e8cbb6beed2", "metadata": {}, "outputs": [ @@ -4772,7 +4927,7 @@ "" ] }, - "execution_count": 13, + "execution_count": 12, "metadata": {}, "output_type": "execute_result" } @@ -4804,7 +4959,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 13, "id": "3c3067b1-f38d-4c3d-8c94-06e8922c3746", "metadata": {}, "outputs": [ @@ -4837,7 +4992,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 14, "id": "a0767a4a-ef94-4109-a1fc-a74f1dae7765", "metadata": {}, "outputs": [ @@ -4870,10 +5025,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_f2643f10999d46737a4c9e8205e82247 {\n", + " #map_392e463abac18378270f8984a8d50513 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 800.0px;\n", + " height: 890.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -4924,14 +5079,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_f2643f10999d46737a4c9e8205e82247" ></div>\n", + " <div class="folium-map" id="map_392e463abac18378270f8984a8d50513" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_f2643f10999d46737a4c9e8205e82247 = L.map(\n", - " "map_f2643f10999d46737a4c9e8205e82247",\n", + " var map_392e463abac18378270f8984a8d50513 = L.map(\n", + " "map_392e463abac18378270f8984a8d50513",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -4943,13 +5098,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_f2643f10999d46737a4c9e8205e82247);\n", + " L.control.scale().addTo(map_392e463abac18378270f8984a8d50513);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_f984c8b20732d5d019632e9d66187b09 = L.tileLayer(\n", + " var tile_layer_cc43ce0b204c994ee8e6a249c6c01aae = L.tileLayer(\n", " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", " {\n", " "minZoom": 0,\n", @@ -4966,10 +5121,10 @@ " );\n", " \n", " \n", - " tile_layer_f984c8b20732d5d019632e9d66187b09.addTo(map_f2643f10999d46737a4c9e8205e82247);\n", + " tile_layer_cc43ce0b204c994ee8e6a249c6c01aae.addTo(map_392e463abac18378270f8984a8d50513);\n", " \n", " \n", - " var tile_layer_fa9d565a88f7f55e5c03114208270d02 = L.tileLayer(\n", + " var tile_layer_8e9d14741b3b81d2cd3b24bd6a15e831 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", " {\n", " "minZoom": 0,\n", @@ -4986,66 +5141,66 @@ " );\n", " \n", " \n", - " tile_layer_fa9d565a88f7f55e5c03114208270d02.addTo(map_f2643f10999d46737a4c9e8205e82247);\n", + " tile_layer_8e9d14741b3b81d2cd3b24bd6a15e831.addTo(map_392e463abac18378270f8984a8d50513);\n", " \n", " \n", - " var layer_control_6804482a55a89c9c20ad450ccf7b9f8f_layers = {\n", + " var layer_control_68c236e0fd8c775986b3dddfe44258f8_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_f984c8b20732d5d019632e9d66187b09,\n", + " "openstreetmap" : tile_layer_cc43ce0b204c994ee8e6a249c6c01aae,\n", " },\n", " overlays : {\n", - " "DOW7 Reflectivity (Harlan, IA)" : tile_layer_fa9d565a88f7f55e5c03114208270d02,\n", + " "DOW7 Reflectivity (Harlan, IA)" : tile_layer_8e9d14741b3b81d2cd3b24bd6a15e831,\n", " },\n", " };\n", - " let layer_control_6804482a55a89c9c20ad450ccf7b9f8f = L.control.layers(\n", - " layer_control_6804482a55a89c9c20ad450ccf7b9f8f_layers.base_layers,\n", - " layer_control_6804482a55a89c9c20ad450ccf7b9f8f_layers.overlays,\n", + " let layer_control_68c236e0fd8c775986b3dddfe44258f8 = L.control.layers(\n", + " layer_control_68c236e0fd8c775986b3dddfe44258f8_layers.base_layers,\n", + " layer_control_68c236e0fd8c775986b3dddfe44258f8_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_f2643f10999d46737a4c9e8205e82247);\n", + " ).addTo(map_392e463abac18378270f8984a8d50513);\n", "\n", " \n", " \n", - " var color_map_4d7922fc9995a2e870984f368d862c1e = {};\n", + " var color_map_6a82914d5e224911778a2a193fa66e3f = {};\n", "\n", " \n", - " color_map_4d7922fc9995a2e870984f368d862c1e.color = d3.scale.threshold()\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.color = d3.scale.threshold()\n", " .domain([-10.0, -9.879759519038076, -9.759519038076153, -9.639278557114228, -9.519038076152304, -9.39879759519038, -9.278557114228457, -9.158316633266534, -9.03807615230461, -8.917835671342685, -8.797595190380761, -8.677354709418838, -8.557114228456914, -8.43687374749499, -8.316633266533067, -8.196392785571142, -8.076152304609218, -7.955911823647295, -7.835671342685371, -7.715430861723447, -7.595190380761522, -7.474949899799599, -7.354709418837675, -7.234468937875752, -7.114228456913827, -6.993987975951904, -6.8737474949899795, -6.753507014028056, -6.6332665330661325, -6.513026052104209, -6.3927855711422845, -6.27254509018036, -6.152304609218437, -6.032064128256513, -5.9118236472945895, -5.791583166332665, -5.671342685370742, -5.551102204408818, -5.430861723446894, -5.31062124248497, -5.190380761523046, -5.070140280561122, -4.949899799599199, -4.829659318637274, -4.709418837675351, -4.589178356713427, -4.468937875751503, -4.348697394789579, -4.228456913827655, -4.108216432865731, -3.987975951903808, -3.8677354709418834, -3.74749498997996, -3.6272545090180364, -3.507014028056112, -3.3867735470941884, -3.266533066132265, -3.1462925851703405, -3.026052104208417, -2.9058116232464926, -2.785571142284569, -2.6653306613226455, -2.545090180360721, -2.4248496993987976, -2.304609218436874, -2.1843687374749496, -2.064128256513026, -1.9438877755511026, -1.823647294589179, -1.7034068136272538, -1.5831663326653302, -1.4629258517034067, -1.3426853707414832, -1.2224448897795597, -1.1022044088176361, -0.9819639278557108, -0.8617234468937873, -0.7414829659318638, -0.6212424849699403, -0.5010020040080168, -0.38076152304609145, -0.26052104208416793, -0.1402805611222444, -0.020040080160320883, 0.10020040080160264, 0.22044088176352794, 0.34068136272545146, 0.460921843687375, 0.5811623246492985, 0.701402805611222, 0.8216432865731456, 0.9418837675350709, 1.0621242484969944, 1.182364729458918, 1.3026052104208414, 1.422845691382765, 1.5430861723446903, 1.6633266533066138, 1.7835671342685373, 1.9038076152304608, 2.0240480961923843, 2.144288577154308, 2.264529058116233, 2.3847695390781567, 2.50501002004008, 2.6252505010020037, 2.7454909819639273, 2.8657314629258526, 2.985971943887776, 3.1062124248496996, 3.226452905811623, 3.3466933867735467, 3.46693386773547, 3.5871743486973955, 3.707414829659319, 3.8276553106212425, 3.947895791583166, 4.06813627254509, 4.188376753507015, 4.308617234468938, 4.428857715430862, 4.5490981963927855, 4.669338677354709, 4.7895791583166325, 4.909819639278558, 5.030060120240481, 5.150300601202405, 5.270541082164328, 5.390781563126252, 5.511022044088177, 5.631262525050101, 5.751503006012024, 5.871743486973948, 5.991983967935871, 6.112224448897795, 6.23246492985972, 6.352705410821642, 6.472945891783567, 6.5931863727454925, 6.713426853707414, 6.8336673346693395, 6.953907815631261, 7.074148296593187, 7.194388777555112, 7.314629258517034, 7.434869739478959, 7.555110220440881, 7.675350701402806, 7.795591182364728, 7.915831663326653, 8.036072144288578, 8.1563126252505, 8.276553106212425, 8.396793587174347, 8.517034068136272, 8.637274549098198, 8.75751503006012, 8.877755511022045, 8.997995991983966, 9.118236472945892, 9.238476953907817, 9.358717434869739, 9.478957915831664, 9.599198396793586, 9.719438877755511, 9.839679358717436, 9.959919839679358, 10.080160320641284, 10.200400801603205, 10.32064128256513, 10.440881763527056, 10.561122244488978, 10.681362725450903, 10.801603206412825, 10.92184368737475, 11.042084168336672, 11.162324649298597, 11.282565130260522, 11.402805611222444, 11.52304609218437, 11.643286573146291, 11.763527054108216, 11.883767535070142, 12.004008016032063, 12.124248496993989, 12.24448897795591, 12.364729458917836, 12.484969939879761, 12.605210420841683, 12.725450901803608, 12.84569138276553, 12.965931863727455, 13.08617234468938, 13.206412825651302, 13.326653306613228, 13.44689378757515, 13.567134268537075, 13.687374749498996, 13.807615230460922, 13.927855711422847, 14.048096192384769, 14.168336673346694, 14.288577154308616, 14.408817635270541, 14.529058116232466, 14.649298597194388, 14.769539078156313, 14.889779559118235, 15.01002004008016, 15.130260521042086, 15.250501002004007, 15.370741482965933, 15.490981963927855, 15.61122244488978, 15.731462925851705, 15.851703406813627, 15.971943887775552, 16.092184368737474, 16.2124248496994, 16.33266533066132, 16.452905811623246, 16.57314629258517, 16.693386773547093, 16.81362725450902, 16.93386773547094, 17.054108216432866, 17.17434869739479, 17.294589178356713, 17.414829659318638, 17.53507014028056, 17.655310621242485, 17.77555110220441, 17.895791583166332, 18.016032064128257, 18.13627254509018, 18.256513026052104, 18.37675350701403, 18.49699398797595, 18.617234468937877, 18.7374749498998, 18.857715430861724, 18.977955911823646, 19.09819639278557, 19.218436873747496, 19.338677354709418, 19.458917835671343, 19.579158316633265, 19.69939879759519, 19.819639278557116, 19.939879759519037, 20.060120240480963, 20.180360721442884, 20.30060120240481, 20.420841683366735, 20.541082164328657, 20.661322645290582, 20.781563126252504, 20.90180360721443, 21.022044088176354, 21.142284569138276, 21.2625250501002, 21.382765531062123, 21.50300601202405, 21.62324649298597, 21.743486973947896, 21.86372745490982, 21.983967935871743, 22.104208416833664, 22.22444889779559, 22.344689378757515, 22.46492985971944, 22.585170340681366, 22.705410821643284, 22.82565130260521, 22.945891783567134, 23.06613226452906, 23.186372745490985, 23.306613226452903, 23.42685370741483, 23.547094188376754, 23.66733466933868, 23.787575150300604, 23.907815631262523, 24.028056112224448, 24.148296593186373, 24.2685370741483, 24.388777555110224, 24.509018036072142, 24.629258517034067, 24.749498997995993, 24.869739478957918, 24.989979959919843, 25.11022044088176, 25.230460921843687, 25.350701402805612, 25.470941883767537, 25.591182364729455, 25.71142284569138, 25.831663326653306, 25.95190380761523, 26.072144288577157, 26.192384769539075, 26.312625250501, 26.432865731462925, 26.55310621242485, 26.673346693386776, 26.793587174348694, 26.91382765531062, 27.034068136272545, 27.15430861723447, 27.274549098196395, 27.394789579158314, 27.51503006012024, 27.635270541082164, 27.75551102204409, 27.875751503006015, 27.995991983967933, 28.11623246492986, 28.236472945891784, 28.35671342685371, 28.476953907815634, 28.597194388777552, 28.717434869739478, 28.837675350701403, 28.95791583166333, 29.078156312625254, 29.19839679358717, 29.318637274549097, 29.438877755511022, 29.559118236472948, 29.679358717434873, 29.79959919839679, 29.919839679358716, 30.04008016032064, 30.160320641282567, 30.280561122244492, 30.40080160320641, 30.521042084168336, 30.64128256513026, 30.761523046092186, 30.88176352705411, 31.00200400801603, 31.122244488977955, 31.24248496993988, 31.362725450901806, 31.482965931863724, 31.60320641282565, 31.723446893787575, 31.8436873747495, 31.963927855711425, 32.08416833667334, 32.20440881763527, 32.324649298597194, 32.44488977955912, 32.565130260521045, 32.68537074148296, 32.80561122244489, 32.92585170340681, 33.04609218436874, 33.166332665330664, 33.28657314629258, 33.40681362725451, 33.52705410821643, 33.64729458917836, 33.76753507014028, 33.8877755511022, 34.00801603206413, 34.12825651302605, 34.24849699398798, 34.3687374749499, 34.48897795591182, 34.609218436873746, 34.72945891783567, 34.8496993987976, 34.96993987975952, 35.09018036072144, 35.210420841683366, 35.33066132264529, 35.450901803607216, 35.57114228456914, 35.69138276553106, 35.811623246492985, 35.93186372745491, 36.052104208416836, 36.17234468937876, 36.29258517034068, 36.412825651302605, 36.53306613226453, 36.653306613226455, 36.77354709418837, 36.8937875751503, 37.014028056112224, 37.13426853707415, 37.254509018036075, 37.37474949899799, 37.49498997995992, 37.61523046092184, 37.73547094188377, 37.855711422845694, 37.97595190380761, 38.09619238476954, 38.21643286573146, 38.33667334669339, 38.45691382765531, 38.57715430861723, 38.69739478957916, 38.81763527054108, 38.93787575150301, 39.05811623246493, 39.17835671342685, 39.298597194388776, 39.4188376753507, 39.53907815631263, 39.65931863727455, 39.77955911823647, 39.899799599198396, 40.02004008016032, 40.140280561122246, 40.26052104208417, 40.38076152304609, 40.501002004008015, 40.62124248496994, 40.741482965931866, 40.86172344689379, 40.98196392785571, 41.102204408817634, 41.22244488977956, 41.342685370741485, 41.46292585170341, 41.58316633266533, 41.703406813627254, 41.82364729458918, 41.943887775551104, 42.06412825651302, 42.18436873747495, 42.30460921843687, 42.4248496993988, 42.545090180360724, 42.66533066132264, 42.78557114228457, 42.90581162324649, 43.02605210420842, 43.14629258517034, 43.26653306613226, 43.38677354709419, 43.50701402805611, 43.62725450901804, 43.74749498997996, 43.86773547094188, 43.987975951903806, 44.10821643286573, 44.22845691382766, 44.34869739478958, 44.4689378757515, 44.589178356713425, 44.70941883767535, 44.829659318637276, 44.9498997995992, 45.07014028056112, 45.190380761523045, 45.31062124248497, 45.430861723446895, 45.55110220440882, 45.67134268537074, 45.791583166332664, 45.91182364729459, 46.032064128256515, 46.15230460921844, 46.27254509018036, 46.392785571142284, 46.51302605210421, 46.633266533066134, 46.75350701402806, 46.87374749498998, 46.9939879759519, 47.11422845691383, 47.234468937875754, 47.35470941883767, 47.4749498997996, 47.59519038076152, 47.71543086172345, 47.83567134268537, 47.95591182364729, 48.07615230460922, 48.19639278557114, 48.31663326653307, 48.43687374749499, 48.55711422845691, 48.677354709418836, 48.79759519038076, 48.91783567134269, 49.03807615230461, 49.15831663326653, 49.278557114228455, 49.39879759519038, 49.519038076152306, 49.63927855711423, 49.75951903807615, 49.879759519038075, 50.0])\n", " .range(['#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff']);\n", " \n", "\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.x = d3.scale.linear()\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.x = d3.scale.linear()\n", " .domain([-10.0, 50.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.legend = L.control({position: 'topright'});\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.legend.addTo(map_f2643f10999d46737a4c9e8205e82247);\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.legend = L.control({position: 'topright'});\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.legend.addTo(map_392e463abac18378270f8984a8d50513);\n", "\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.xAxis = d3.svg.axis()\n", - " .scale(color_map_4d7922fc9995a2e870984f368d862c1e.x)\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.xAxis = d3.svg.axis()\n", + " .scale(color_map_6a82914d5e224911778a2a193fa66e3f.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([-10.0, '', 2.0, '', 14.0, '', 26.0, '', 38.0, '', 50.0, '']);\n", "\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.g = color_map_4d7922fc9995a2e870984f368d862c1e.svg.append("g")\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.g = color_map_6a82914d5e224911778a2a193fa66e3f.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.g.selectAll("rect")\n", - " .data(color_map_4d7922fc9995a2e870984f368d862c1e.color.range().map(function(d, i) {\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.g.selectAll("rect")\n", + " .data(color_map_6a82914d5e224911778a2a193fa66e3f.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_4d7922fc9995a2e870984f368d862c1e.x(color_map_4d7922fc9995a2e870984f368d862c1e.color.domain()[i - 1]) : color_map_4d7922fc9995a2e870984f368d862c1e.x.range()[0],\n", - " x1: i < color_map_4d7922fc9995a2e870984f368d862c1e.color.domain().length ? color_map_4d7922fc9995a2e870984f368d862c1e.x(color_map_4d7922fc9995a2e870984f368d862c1e.color.domain()[i]) : color_map_4d7922fc9995a2e870984f368d862c1e.x.range()[1],\n", + " x0: i ? color_map_6a82914d5e224911778a2a193fa66e3f.x(color_map_6a82914d5e224911778a2a193fa66e3f.color.domain()[i - 1]) : color_map_6a82914d5e224911778a2a193fa66e3f.x.range()[0],\n", + " x1: i < color_map_6a82914d5e224911778a2a193fa66e3f.color.domain().length ? color_map_6a82914d5e224911778a2a193fa66e3f.x(color_map_6a82914d5e224911778a2a193fa66e3f.color.domain()[i]) : color_map_6a82914d5e224911778a2a193fa66e3f.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -5055,7 +5210,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_4d7922fc9995a2e870984f368d862c1e.g.call(color_map_4d7922fc9995a2e870984f368d862c1e.xAxis).append("text")\n", + " color_map_6a82914d5e224911778a2a193fa66e3f.g.call(color_map_6a82914d5e224911778a2a193fa66e3f.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -5064,10 +5219,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 15, + "execution_count": 14, "metadata": {}, "output_type": "execute_result" } @@ -5087,7 +5242,7 @@ " attribution=\"DOW7 Reflectivity (Harlan, IA)\",\n", " tile_name=\"DOW7 Reflectivity (Harlan, IA)\",\n", " opacity=0.8,\n", - " height=\"800px\",\n", + " height=\"890px\",\n", ")\n", "\n", "print(\n", @@ -5109,7 +5264,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 15, "id": "50d9d4a0-3eb7-4382-936b-0cc7fd29e27c", "metadata": {}, "outputs": [ @@ -6031,7 +6186,7 @@ "" ] }, - "execution_count": 17, + "execution_count": 15, "metadata": {}, "output_type": "execute_result" } @@ -6063,7 +6218,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 16, "id": "61251d1a-f1d0-4daa-9aef-9c6c3aed41e2", "metadata": {}, "outputs": [ @@ -6096,7 +6251,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 17, "id": "45cb9b07-0f5f-4297-891b-aa378f51fe76", "metadata": {}, "outputs": [ @@ -6129,10 +6284,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_dd67da19940476f720de3aaa3740af4f {\n", + " #map_56fa48c3258831963448f1940c23f288 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 800.0px;\n", + " height: 890.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -6183,14 +6338,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_dd67da19940476f720de3aaa3740af4f" ></div>\n", + " <div class="folium-map" id="map_56fa48c3258831963448f1940c23f288" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_dd67da19940476f720de3aaa3740af4f = L.map(\n", - " "map_dd67da19940476f720de3aaa3740af4f",\n", + " var map_56fa48c3258831963448f1940c23f288 = L.map(\n", + " "map_56fa48c3258831963448f1940c23f288",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6202,13 +6357,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_dd67da19940476f720de3aaa3740af4f);\n", + " L.control.scale().addTo(map_56fa48c3258831963448f1940c23f288);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_05c2dbd7937d65e6dea7f5bb81c64729 = L.tileLayer(\n", + " var tile_layer_96c4f9afe9e7b40aede14087719ea5fd = L.tileLayer(\n", " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", " {\n", " "minZoom": 0,\n", @@ -6225,10 +6380,10 @@ " );\n", " \n", " \n", - " tile_layer_05c2dbd7937d65e6dea7f5bb81c64729.addTo(map_dd67da19940476f720de3aaa3740af4f);\n", + " tile_layer_96c4f9afe9e7b40aede14087719ea5fd.addTo(map_56fa48c3258831963448f1940c23f288);\n", " \n", " \n", - " var tile_layer_8c36622dde44547510f421b5f77f5ad8 = L.tileLayer(\n", + " var tile_layer_79529df171b7b400bc45bf35c67bd25e = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6245,66 +6400,66 @@ " );\n", " \n", " \n", - " tile_layer_8c36622dde44547510f421b5f77f5ad8.addTo(map_dd67da19940476f720de3aaa3740af4f);\n", + " tile_layer_79529df171b7b400bc45bf35c67bd25e.addTo(map_56fa48c3258831963448f1940c23f288);\n", " \n", " \n", - " var layer_control_2494c87bbad5d31789dc7b7d53c61fd4_layers = {\n", + " var layer_control_3ddf6e63b9b71690b238baa5466d7bcf_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_05c2dbd7937d65e6dea7f5bb81c64729,\n", + " "openstreetmap" : tile_layer_96c4f9afe9e7b40aede14087719ea5fd,\n", " },\n", " overlays : {\n", - " "DOW7 Velocity (Harlan, IA)" : tile_layer_8c36622dde44547510f421b5f77f5ad8,\n", + " "DOW7 Velocity (Harlan, IA)" : tile_layer_79529df171b7b400bc45bf35c67bd25e,\n", " },\n", " };\n", - " let layer_control_2494c87bbad5d31789dc7b7d53c61fd4 = L.control.layers(\n", - " layer_control_2494c87bbad5d31789dc7b7d53c61fd4_layers.base_layers,\n", - " layer_control_2494c87bbad5d31789dc7b7d53c61fd4_layers.overlays,\n", + " let layer_control_3ddf6e63b9b71690b238baa5466d7bcf = L.control.layers(\n", + " layer_control_3ddf6e63b9b71690b238baa5466d7bcf_layers.base_layers,\n", + " layer_control_3ddf6e63b9b71690b238baa5466d7bcf_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_dd67da19940476f720de3aaa3740af4f);\n", + " ).addTo(map_56fa48c3258831963448f1940c23f288);\n", "\n", " \n", " \n", - " var color_map_44340331b3f6379c402644101ec6f1ab = {};\n", + " var color_map_98b95bf96ec17767eb68199eee93b512 = {};\n", "\n", " \n", - " color_map_44340331b3f6379c402644101ec6f1ab.color = d3.scale.threshold()\n", + " color_map_98b95bf96ec17767eb68199eee93b512.color = d3.scale.threshold()\n", " .domain([-75.0, -74.6993987975952, -74.39879759519039, -74.09819639278557, -73.79759519038076, -73.49699398797596, -73.19639278557115, -72.89579158316633, -72.59519038076152, -72.29458917835672, -71.99398797595191, -71.69338677354709, -71.39278557114228, -71.09218436873748, -70.79158316633267, -70.49098196392785, -70.19038076152304, -69.88977955911824, -69.58917835671343, -69.28857715430861, -68.9879759519038, -68.687374749499, -68.3867735470942, -68.08617234468937, -67.78557114228457, -67.48496993987976, -67.18436873747495, -66.88376753507013, -66.58316633266533, -66.28256513026052, -65.98196392785572, -65.6813627254509, -65.38076152304609, -65.08016032064128, -64.77955911823648, -64.47895791583167, -64.17835671342685, -63.877755511022045, -63.57715430861724, -63.276553106212425, -62.97595190380761, -62.675350701402806, -62.374749498998, -62.07414829659319, -61.77354709418837, -61.47294589178357, -61.17234468937876, -60.87174348697395, -60.571142284569135, -60.27054108216433, -59.96993987975952, -59.66933867735471, -59.368737474949896, -59.06813627254509, -58.76753507014028, -58.46693386773547, -58.16633266533066, -57.86573146292585, -57.565130260521045, -57.26452905811623, -56.96392785571142, -56.66332665330661, -56.362725450901806, -56.06212424849699, -55.76152304609218, -55.46092184368737, -55.16032064128257, -54.859719438877754, -54.55911823647294, -54.258517034068134, -53.95791583166333, -53.65731462925852, -53.35671342685371, -53.056112224448896, -52.75551102204409, -52.45490981963928, -52.15430861723447, -51.85370741482966, -51.55310621242485, -51.252505010020045, -50.95190380761523, -50.65130260521042, -50.35070140280561, -50.050100200400806, -49.74949899799599, -49.44889779559118, -49.14829659318637, -48.84769539078157, -48.547094188376754, -48.24649298597194, -47.945891783567134, -47.64529058116233, -47.344689378757515, -47.0440881763527, -46.743486973947896, -46.44288577154309, -46.142284569138276, -45.84168336673346, -45.54108216432866, -45.24048096192385, -44.93987975951904, -44.639278557114224, -44.33867735470942, -44.03807615230461, -43.7374749498998, -43.436873747494985, -43.13627254509018, -42.83567134268537, -42.53507014028056, -42.234468937875754, -41.93386773547094, -41.633266533066134, -41.33266533066132, -41.032064128256515, -40.7314629258517, -40.430861723446895, -40.13026052104208, -39.829659318637276, -39.52905811623246, -39.22845691382766, -38.92785571142284, -38.62725450901804, -38.326653306613224, -38.02605210420842, -37.725450901803605, -37.4248496993988, -37.124248496993985, -36.82364729458918, -36.523046092184366, -36.22244488977956, -35.921843687374746, -35.62124248496994, -35.32064128256513, -35.02004008016032, -34.71943887775551, -34.4188376753507, -34.11823647294589, -33.81763527054108, -33.517034068136276, -33.21643286573146, -32.91583166332666, -32.61523046092184, -32.31462925851704, -32.014028056112224, -31.713426853707418, -31.412825651302605, -31.1122244488978, -30.811623246492985, -30.51102204408818, -30.210420841683366, -29.90981963927856, -29.609218436873746, -29.30861723446894, -29.008016032064127, -28.70741482965932, -28.406813627254508, -28.1062124248497, -27.805611222444888, -27.505010020040082, -27.20440881763527, -26.903807615230463, -26.60320641282565, -26.302605210420843, -26.00200400801603, -25.701402805611224, -25.40080160320641, -25.100200400801604, -24.79959919839679, -24.498997995991985, -24.19839679358717, -23.897795591182366, -23.597194388777552, -23.296593186372746, -22.995991983967933, -22.695390781563127, -22.394789579158314, -22.094188376753507, -21.793587174348694, -21.492985971943888, -21.192384769539075, -20.89178356713427, -20.591182364729455, -20.29058116232465, -19.989979959919843, -19.68937875751503, -19.388777555110224, -19.08817635270541, -18.787575150300604, -18.48697394789579, -18.186372745490985, -17.88577154308617, -17.585170340681366, -17.284569138276552, -16.983967935871746, -16.683366733466933, -16.382765531062127, -16.082164328657313, -15.781563126252507, -15.480961923847694, -15.180360721442888, -14.879759519038075, -14.579158316633269, -14.278557114228455, -13.97795591182365, -13.677354709418836, -13.37675350701403, -13.076152304609217, -12.77555110220441, -12.474949899799597, -12.174348697394791, -11.873747494989978, -11.573146292585172, -11.272545090180358, -10.971943887775552, -10.671342685370746, -10.370741482965926, -10.07014028056112, -9.769539078156313, -9.468937875751507, -9.168336673346687, -8.86773547094188, -8.567134268537075, -8.266533066132268, -7.965931863727448, -7.665330661322642, -7.364729458917836, -7.06412825651303, -6.7635270541082235, -6.462925851703403, -6.162324649298597, -5.861723446893791, -5.561122244488985, -5.260521042084164, -4.959919839679358, -4.659318637274552, -4.358717434869746, -4.058116232464926, -3.7575150300601194, -3.4569138276553133, -3.156312625250507, -2.855711422845687, -2.5551102204408807, -2.2545090180360745, -1.9539078156312684, -1.653306613226448, -1.3527054108216419, -1.0521042084168357, -0.7515030060120296, -0.4509018036072092, -0.15030060120240307, 0.15030060120240307, 0.4509018036072092, 0.7515030060120296, 1.0521042084168357, 1.3527054108216419, 1.653306613226448, 1.9539078156312684, 2.2545090180360745, 2.5551102204408807, 2.855711422845687, 3.156312625250507, 3.4569138276553133, 3.7575150300601194, 4.058116232464926, 4.358717434869746, 4.659318637274552, 4.959919839679358, 5.260521042084164, 5.561122244488985, 5.861723446893791, 6.162324649298597, 6.462925851703403, 6.7635270541082235, 7.06412825651303, 7.364729458917836, 7.665330661322642, 7.965931863727448, 8.266533066132268, 8.567134268537075, 8.86773547094188, 9.168336673346687, 9.468937875751507, 9.769539078156313, 10.07014028056112, 10.370741482965926, 10.671342685370746, 10.971943887775552, 11.272545090180358, 11.573146292585164, 11.873747494989985, 12.174348697394791, 12.474949899799597, 12.775551102204403, 13.076152304609224, 13.37675350701403, 13.677354709418836, 13.977955911823642, 14.278557114228462, 14.579158316633269, 14.879759519038075, 15.18036072144288, 15.480961923847701, 15.781563126252507, 16.082164328657313, 16.38276553106212, 16.68336673346694, 16.983967935871746, 17.284569138276552, 17.58517034068136, 17.88577154308618, 18.186372745490985, 18.48697394789579, 18.787575150300597, 19.088176352705418, 19.388777555110224, 19.68937875751503, 19.989979959919836, 20.290581162324656, 20.591182364729463, 20.89178356713427, 21.192384769539075, 21.49298597194388, 21.7935871743487, 22.094188376753507, 22.394789579158314, 22.69539078156312, 22.99599198396794, 23.296593186372746, 23.597194388777552, 23.89779559118236, 24.19839679358718, 24.498997995991985, 24.79959919839679, 25.100200400801597, 25.400801603206418, 25.701402805611224, 26.00200400801603, 26.302605210420836, 26.603206412825656, 26.903807615230463, 27.20440881763527, 27.505010020040075, 27.805611222444895, 28.1062124248497, 28.406813627254508, 28.707414829659314, 29.008016032064134, 29.30861723446894, 29.609218436873746, 29.909819639278552, 30.210420841683373, 30.51102204408818, 30.811623246492985, 31.11222444889779, 31.41282565130261, 31.713426853707418, 32.014028056112224, 32.31462925851703, 32.61523046092185, 32.91583166332666, 33.21643286573146, 33.51703406813627, 33.81763527054109, 34.118236472945895, 34.4188376753507, 34.71943887775551, 35.020040080160314, 35.320641282565134, 35.62124248496994, 35.921843687374746, 36.22244488977955, 36.52304609218437, 36.82364729458918, 37.124248496993985, 37.42484969939879, 37.72545090180361, 38.02605210420842, 38.326653306613224, 38.62725450901803, 38.92785571142285, 39.22845691382766, 39.52905811623246, 39.82965931863727, 40.13026052104209, 40.430861723446895, 40.7314629258517, 41.03206412825651, 41.33266533066133, 41.633266533066134, 41.93386773547094, 42.23446893787575, 42.53507014028057, 42.83567134268537, 43.13627254509018, 43.436873747494985, 43.737474949899806, 44.03807615230461, 44.33867735470942, 44.639278557114224, 44.939879759519044, 45.24048096192385, 45.54108216432866, 45.84168336673346, 46.14228456913828, 46.44288577154309, 46.743486973947896, 47.0440881763527, 47.34468937875752, 47.64529058116233, 47.945891783567134, 48.24649298597194, 48.54709418837675, 48.84769539078157, 49.14829659318637, 49.44889779559118, 49.749498997995985, 50.050100200400806, 50.35070140280561, 50.65130260521042, 50.951903807615224, 51.252505010020045, 51.55310621242485, 51.85370741482966, 52.15430861723446, 52.45490981963928, 52.75551102204409, 53.056112224448896, 53.3567134268537, 53.65731462925851, 53.957915831663314, 54.25851703406815, 54.559118236472955, 54.85971943887776, 55.16032064128257, 55.46092184368737, 55.76152304609218, 56.062124248496986, 56.36272545090179, 56.663326653306626, 56.96392785571143, 57.26452905811624, 57.565130260521045, 57.86573146292585, 58.16633266533066, 58.46693386773546, 58.76753507014027, 59.068136272545104, 59.36873747494991, 59.669338677354716, 59.96993987975952, 60.27054108216433, 60.571142284569135, 60.87174348697394, 61.17234468937875, 61.47294589178355, 61.77354709418839, 62.074148296593194, 62.374749498998, 62.675350701402806, 62.97595190380761, 63.27655310621242, 63.577154308617224, 63.87775551102203, 64.17835671342687, 64.47895791583167, 64.77955911823648, 65.08016032064128, 65.38076152304609, 65.6813627254509, 65.9819639278557, 66.28256513026051, 66.58316633266534, 66.88376753507015, 67.18436873747495, 67.48496993987976, 67.78557114228457, 68.08617234468937, 68.38677354709418, 68.68737474949899, 68.98797595190382, 69.28857715430863, 69.58917835671343, 69.88977955911824, 70.19038076152304, 70.49098196392785, 70.79158316633266, 71.09218436873746, 71.3927855711423, 71.6933867735471, 71.99398797595191, 72.29458917835672, 72.59519038076152, 72.89579158316633, 73.19639278557113, 73.49699398797594, 73.79759519038078, 74.09819639278558, 74.39879759519039, 74.6993987975952, 75.0])\n", " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", " \n", "\n", - " color_map_44340331b3f6379c402644101ec6f1ab.x = d3.scale.linear()\n", + " color_map_98b95bf96ec17767eb68199eee93b512.x = d3.scale.linear()\n", " .domain([-75.0, 75.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_44340331b3f6379c402644101ec6f1ab.legend = L.control({position: 'topright'});\n", - " color_map_44340331b3f6379c402644101ec6f1ab.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_44340331b3f6379c402644101ec6f1ab.legend.addTo(map_dd67da19940476f720de3aaa3740af4f);\n", + " color_map_98b95bf96ec17767eb68199eee93b512.legend = L.control({position: 'topright'});\n", + " color_map_98b95bf96ec17767eb68199eee93b512.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_98b95bf96ec17767eb68199eee93b512.legend.addTo(map_56fa48c3258831963448f1940c23f288);\n", "\n", - " color_map_44340331b3f6379c402644101ec6f1ab.xAxis = d3.svg.axis()\n", - " .scale(color_map_44340331b3f6379c402644101ec6f1ab.x)\n", + " color_map_98b95bf96ec17767eb68199eee93b512.xAxis = d3.svg.axis()\n", + " .scale(color_map_98b95bf96ec17767eb68199eee93b512.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([-75.0, '', -45.0, '', -15.0, '', 15.0, '', 45.0, '', 75.0, '']);\n", "\n", - " color_map_44340331b3f6379c402644101ec6f1ab.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_98b95bf96ec17767eb68199eee93b512.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_44340331b3f6379c402644101ec6f1ab.g = color_map_44340331b3f6379c402644101ec6f1ab.svg.append("g")\n", + " color_map_98b95bf96ec17767eb68199eee93b512.g = color_map_98b95bf96ec17767eb68199eee93b512.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_44340331b3f6379c402644101ec6f1ab.g.selectAll("rect")\n", - " .data(color_map_44340331b3f6379c402644101ec6f1ab.color.range().map(function(d, i) {\n", + " color_map_98b95bf96ec17767eb68199eee93b512.g.selectAll("rect")\n", + " .data(color_map_98b95bf96ec17767eb68199eee93b512.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_44340331b3f6379c402644101ec6f1ab.x(color_map_44340331b3f6379c402644101ec6f1ab.color.domain()[i - 1]) : color_map_44340331b3f6379c402644101ec6f1ab.x.range()[0],\n", - " x1: i < color_map_44340331b3f6379c402644101ec6f1ab.color.domain().length ? color_map_44340331b3f6379c402644101ec6f1ab.x(color_map_44340331b3f6379c402644101ec6f1ab.color.domain()[i]) : color_map_44340331b3f6379c402644101ec6f1ab.x.range()[1],\n", + " x0: i ? color_map_98b95bf96ec17767eb68199eee93b512.x(color_map_98b95bf96ec17767eb68199eee93b512.color.domain()[i - 1]) : color_map_98b95bf96ec17767eb68199eee93b512.x.range()[0],\n", + " x1: i < color_map_98b95bf96ec17767eb68199eee93b512.color.domain().length ? color_map_98b95bf96ec17767eb68199eee93b512.x(color_map_98b95bf96ec17767eb68199eee93b512.color.domain()[i]) : color_map_98b95bf96ec17767eb68199eee93b512.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -6314,7 +6469,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_44340331b3f6379c402644101ec6f1ab.g.call(color_map_44340331b3f6379c402644101ec6f1ab.xAxis).append("text")\n", + " color_map_98b95bf96ec17767eb68199eee93b512.g.call(color_map_98b95bf96ec17767eb68199eee93b512.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -6323,10 +6478,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 19, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" } @@ -6346,7 +6501,7 @@ " attribution=\"DOW7 Velocity (Harlan, IA)\",\n", " tile_name=\"DOW7 Velocity (Harlan, IA)\",\n", " opacity=0.8,\n", - " height=\"800px\",\n", + " height=\"890px\",\n", ")\n", "\n", "print(\n", @@ -6359,9 +6514,7 @@ { "cell_type": "markdown", "id": "a6f4d8e4-1e6a-4aaa-b2af-107bc5466344", - "metadata": { - "jp-MarkdownHeadingCollapsed": true - }, + "metadata": {}, "source": [ "# Example: DOW7 Correlation Coefficient (Radar)\n", "\n", @@ -6370,7 +6523,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 18, "id": "2461b25d-de5d-42b1-b30d-464185144021", "metadata": {}, "outputs": [ @@ -7292,7 +7445,7 @@ "" ] }, - "execution_count": 21, + "execution_count": 18, "metadata": {}, "output_type": "execute_result" } @@ -7324,7 +7477,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 19, "id": "f76739f7-236f-4b6f-be79-8772248e1f92", "metadata": {}, "outputs": [ @@ -7357,7 +7510,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 20, "id": "9c112371-86d5-4097-8c73-d9b510560cda", "metadata": {}, "outputs": [ @@ -7390,10 +7543,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_d25a0cad6476e7018f7e7ef392916797 {\n", + " #map_b75a1ceac32ddc457d536d0528596633 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 800.0px;\n", + " height: 890.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -7444,14 +7597,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_d25a0cad6476e7018f7e7ef392916797" ></div>\n", + " <div class="folium-map" id="map_b75a1ceac32ddc457d536d0528596633" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_d25a0cad6476e7018f7e7ef392916797 = L.map(\n", - " "map_d25a0cad6476e7018f7e7ef392916797",\n", + " var map_b75a1ceac32ddc457d536d0528596633 = L.map(\n", + " "map_b75a1ceac32ddc457d536d0528596633",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -7463,13 +7616,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_d25a0cad6476e7018f7e7ef392916797);\n", + " L.control.scale().addTo(map_b75a1ceac32ddc457d536d0528596633);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_44bb2d8ce660db3edd4a9c85abfa7db2 = L.tileLayer(\n", + " var tile_layer_65a017f4713415748ba9291d566430a4 = L.tileLayer(\n", " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", " {\n", " "minZoom": 0,\n", @@ -7486,10 +7639,10 @@ " );\n", " \n", " \n", - " tile_layer_44bb2d8ce660db3edd4a9c85abfa7db2.addTo(map_d25a0cad6476e7018f7e7ef392916797);\n", + " tile_layer_65a017f4713415748ba9291d566430a4.addTo(map_b75a1ceac32ddc457d536d0528596633);\n", " \n", " \n", - " var tile_layer_111eec44070438cddb84cb03dd935d29 = L.tileLayer(\n", + " var tile_layer_e4c634a4ff3580e2f0e9d9fb7c6d6099 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C1",\n", " {\n", " "minZoom": 0,\n", @@ -7506,66 +7659,66 @@ " );\n", " \n", " \n", - " tile_layer_111eec44070438cddb84cb03dd935d29.addTo(map_d25a0cad6476e7018f7e7ef392916797);\n", + " tile_layer_e4c634a4ff3580e2f0e9d9fb7c6d6099.addTo(map_b75a1ceac32ddc457d536d0528596633);\n", " \n", " \n", - " var layer_control_94859dfad869b7fb8abcb5f363306e55_layers = {\n", + " var layer_control_c59bdaa5b5484fa04de6d472efc35630_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_44bb2d8ce660db3edd4a9c85abfa7db2,\n", + " "openstreetmap" : tile_layer_65a017f4713415748ba9291d566430a4,\n", " },\n", " overlays : {\n", - " "DOW7 Correlation Coefficient (Greenfield, IA)" : tile_layer_111eec44070438cddb84cb03dd935d29,\n", + " "DOW7 Correlation Coefficient (Greenfield, IA)" : tile_layer_e4c634a4ff3580e2f0e9d9fb7c6d6099,\n", " },\n", " };\n", - " let layer_control_94859dfad869b7fb8abcb5f363306e55 = L.control.layers(\n", - " layer_control_94859dfad869b7fb8abcb5f363306e55_layers.base_layers,\n", - " layer_control_94859dfad869b7fb8abcb5f363306e55_layers.overlays,\n", + " let layer_control_c59bdaa5b5484fa04de6d472efc35630 = L.control.layers(\n", + " layer_control_c59bdaa5b5484fa04de6d472efc35630_layers.base_layers,\n", + " layer_control_c59bdaa5b5484fa04de6d472efc35630_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_d25a0cad6476e7018f7e7ef392916797);\n", + " ).addTo(map_b75a1ceac32ddc457d536d0528596633);\n", "\n", " \n", " \n", - " var color_map_ccff4b482151348941da9b9a433bb9ee = {};\n", + " var color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d = {};\n", "\n", " \n", - " color_map_ccff4b482151348941da9b9a433bb9ee.color = d3.scale.threshold()\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color = d3.scale.threshold()\n", " .domain([0.0, 0.002004008016032064, 0.004008016032064128, 0.006012024048096192, 0.008016032064128256, 0.01002004008016032, 0.012024048096192385, 0.014028056112224449, 0.01603206412825651, 0.018036072144288578, 0.02004008016032064, 0.022044088176352707, 0.02404809619238477, 0.026052104208416832, 0.028056112224448898, 0.03006012024048096, 0.03206412825651302, 0.03406813627254509, 0.036072144288577156, 0.03807615230460922, 0.04008016032064128, 0.04208416833667335, 0.04408817635270541, 0.04609218436873747, 0.04809619238476954, 0.050100200400801605, 0.052104208416833664, 0.05410821643286573, 0.056112224448897796, 0.05811623246492986, 0.06012024048096192, 0.06212424849699399, 0.06412825651302605, 0.06613226452905811, 0.06813627254509018, 0.07014028056112225, 0.07214428857715431, 0.07414829659318638, 0.07615230460921844, 0.0781563126252505, 0.08016032064128256, 0.08216432865731463, 0.0841683366733467, 0.08617234468937876, 0.08817635270541083, 0.09018036072144289, 0.09218436873747494, 0.09418837675350701, 0.09619238476953908, 0.09819639278557114, 0.10020040080160321, 0.10220440881763528, 0.10420841683366733, 0.1062124248496994, 0.10821643286573146, 0.11022044088176353, 0.11222444889779559, 0.11422845691382766, 0.11623246492985972, 0.11823647294589178, 0.12024048096192384, 0.12224448897795591, 0.12424849699398798, 0.12625250501002003, 0.1282565130260521, 0.13026052104208416, 0.13226452905811623, 0.1342685370741483, 0.13627254509018036, 0.13827655310621242, 0.1402805611222445, 0.14228456913827656, 0.14428857715430862, 0.1462925851703407, 0.14829659318637275, 0.15030060120240482, 0.1523046092184369, 0.15430861723446893, 0.156312625250501, 0.15831663326653306, 0.16032064128256512, 0.1623246492985972, 0.16432865731462926, 0.16633266533066132, 0.1683366733466934, 0.17034068136272545, 0.17234468937875752, 0.1743486973947896, 0.17635270541082165, 0.17835671342685372, 0.18036072144288579, 0.18236472945891782, 0.1843687374749499, 0.18637274549098196, 0.18837675350701402, 0.1903807615230461, 0.19238476953907815, 0.19438877755511022, 0.1963927855711423, 0.19839679358717435, 0.20040080160320642, 0.20240480961923848, 0.20440881763527055, 0.20641282565130262, 0.20841683366733466, 0.21042084168336672, 0.2124248496993988, 0.21442885771543085, 0.21643286573146292, 0.218436873747495, 0.22044088176352705, 0.22244488977955912, 0.22444889779559118, 0.22645290581162325, 0.22845691382765532, 0.23046092184368738, 0.23246492985971945, 0.23446893787575152, 0.23647294589178355, 0.23847695390781562, 0.24048096192384769, 0.24248496993987975, 0.24448897795591182, 0.24649298597194388, 0.24849699398797595, 0.250501002004008, 0.25250501002004005, 0.2545090180360721, 0.2565130260521042, 0.25851703406813625, 0.2605210420841683, 0.2625250501002004, 0.26452905811623245, 0.2665330661322645, 0.2685370741482966, 0.27054108216432865, 0.2725450901803607, 0.2745490981963928, 0.27655310621242485, 0.2785571142284569, 0.280561122244489, 0.28256513026052105, 0.2845691382765531, 0.2865731462925852, 0.28857715430861725, 0.2905811623246493, 0.2925851703406814, 0.29458917835671344, 0.2965931863727455, 0.2985971943887776, 0.30060120240480964, 0.3026052104208417, 0.3046092184368738, 0.3066132264529058, 0.30861723446893785, 0.3106212424849699, 0.312625250501002, 0.31462925851703405, 0.3166332665330661, 0.3186372745490982, 0.32064128256513025, 0.3226452905811623, 0.3246492985971944, 0.32665330661322645, 0.3286573146292585, 0.3306613226452906, 0.33266533066132264, 0.3346693386773547, 0.3366733466933868, 0.33867735470941884, 0.3406813627254509, 0.342685370741483, 0.34468937875751504, 0.3466933867735471, 0.3486973947895792, 0.35070140280561124, 0.3527054108216433, 0.35470941883767537, 0.35671342685370744, 0.3587174348697395, 0.36072144288577157, 0.3627254509018036, 0.36472945891783565, 0.3667334669338677, 0.3687374749498998, 0.37074148296593185, 0.3727454909819639, 0.374749498997996, 0.37675350701402804, 0.3787575150300601, 0.3807615230460922, 0.38276553106212424, 0.3847695390781563, 0.3867735470941884, 0.38877755511022044, 0.3907815631262525, 0.3927855711422846, 0.39478957915831664, 0.3967935871743487, 0.39879759519038077, 0.40080160320641284, 0.4028056112224449, 0.40480961923847697, 0.40681362725450904, 0.4088176352705411, 0.41082164328657317, 0.41282565130260523, 0.4148296593186373, 0.4168336673346693, 0.4188376753507014, 0.42084168336673344, 0.4228456913827655, 0.4248496993987976, 0.42685370741482964, 0.4288577154308617, 0.4308617234468938, 0.43286573146292584, 0.4348697394789579, 0.43687374749499, 0.43887775551102204, 0.4408817635270541, 0.44288577154308617, 0.44488977955911824, 0.4468937875751503, 0.44889779559118237, 0.45090180360721444, 0.4529058116232465, 0.45490981963927857, 0.45691382765531063, 0.4589178356713427, 0.46092184368737477, 0.46292585170340683, 0.4649298597194389, 0.46693386773547096, 0.46893787575150303, 0.4709418837675351, 0.4729458917835671, 0.4749498997995992, 0.47695390781563124, 0.4789579158316633, 0.48096192384769537, 0.48296593186372744, 0.4849699398797595, 0.48697394789579157, 0.48897795591182364, 0.4909819639278557, 0.49298597194388777, 0.49498997995991983, 0.4969939879759519, 0.49899799599198397, 0.501002004008016, 0.503006012024048, 0.5050100200400801, 0.5070140280561122, 0.5090180360721442, 0.5110220440881763, 0.5130260521042084, 0.5150300601202404, 0.5170340681362725, 0.5190380761523046, 0.5210420841683366, 0.5230460921843687, 0.5250501002004008, 0.5270541082164328, 0.5290581162324649, 0.531062124248497, 0.533066132264529, 0.5350701402805611, 0.5370741482965932, 0.5390781563126252, 0.5410821643286573, 0.5430861723446894, 0.5450901803607214, 0.5470941883767535, 0.5490981963927856, 0.5511022044088176, 0.5531062124248497, 0.5551102204408818, 0.5571142284569138, 0.5591182364729459, 0.561122244488978, 0.56312625250501, 0.5651302605210421, 0.5671342685370742, 0.5691382765531062, 0.5711422845691383, 0.5731462925851704, 0.5751503006012024, 0.5771543086172345, 0.5791583166332666, 0.5811623246492986, 0.5831663326653307, 0.5851703406813628, 0.5871743486973948, 0.5891783567134269, 0.591182364729459, 0.593186372745491, 0.5951903807615231, 0.5971943887775552, 0.5991983967935872, 0.6012024048096193, 0.6032064128256514, 0.6052104208416834, 0.6072144288577155, 0.6092184368737475, 0.6112224448897795, 0.6132264529058116, 0.6152304609218436, 0.6172344689378757, 0.6192384769539078, 0.6212424849699398, 0.6232464929859719, 0.625250501002004, 0.627254509018036, 0.6292585170340681, 0.6312625250501002, 0.6332665330661322, 0.6352705410821643, 0.6372745490981964, 0.6392785571142284, 0.6412825651302605, 0.6432865731462926, 0.6452905811623246, 0.6472945891783567, 0.6492985971943888, 0.6513026052104208, 0.6533066132264529, 0.655310621242485, 0.657314629258517, 0.6593186372745491, 0.6613226452905812, 0.6633266533066132, 0.6653306613226453, 0.6673346693386774, 0.6693386773547094, 0.6713426853707415, 0.6733466933867736, 0.6753507014028056, 0.6773547094188377, 0.6793587174348698, 0.6813627254509018, 0.6833667334669339, 0.685370741482966, 0.687374749498998, 0.6893787575150301, 0.6913827655310621, 0.6933867735470942, 0.6953907815631263, 0.6973947895791583, 0.6993987975951904, 0.7014028056112225, 0.7034068136272545, 0.7054108216432866, 0.7074148296593187, 0.7094188376753507, 0.7114228456913828, 0.7134268537074149, 0.7154308617234469, 0.717434869739479, 0.7194388777555111, 0.7214428857715431, 0.7234468937875751, 0.7254509018036072, 0.7274549098196392, 0.7294589178356713, 0.7314629258517034, 0.7334669338677354, 0.7354709418837675, 0.7374749498997996, 0.7394789579158316, 0.7414829659318637, 0.7434869739478958, 0.7454909819639278, 0.7474949899799599, 0.749498997995992, 0.751503006012024, 0.7535070140280561, 0.7555110220440882, 0.7575150300601202, 0.7595190380761523, 0.7615230460921844, 0.7635270541082164, 0.7655310621242485, 0.7675350701402806, 0.7695390781563126, 0.7715430861723447, 0.7735470941883767, 0.7755511022044088, 0.7775551102204409, 0.779559118236473, 0.781563126252505, 0.7835671342685371, 0.7855711422845691, 0.7875751503006012, 0.7895791583166333, 0.7915831663326653, 0.7935871743486974, 0.7955911823647295, 0.7975951903807615, 0.7995991983967936, 0.8016032064128257, 0.8036072144288577, 0.8056112224448898, 0.8076152304609219, 0.8096192384769539, 0.811623246492986, 0.8136272545090181, 0.8156312625250501, 0.8176352705410822, 0.8196392785571143, 0.8216432865731463, 0.8236472945891784, 0.8256513026052105, 0.8276553106212425, 0.8296593186372746, 0.8316633266533067, 0.8336673346693386, 0.8356713426853707, 0.8376753507014028, 0.8396793587174348, 0.8416833667334669, 0.843687374749499, 0.845691382765531, 0.8476953907815631, 0.8496993987975952, 0.8517034068136272, 0.8537074148296593, 0.8557114228456913, 0.8577154308617234, 0.8597194388777555, 0.8617234468937875, 0.8637274549098196, 0.8657314629258517, 0.8677354709418837, 0.8697394789579158, 0.8717434869739479, 0.87374749498998, 0.875751503006012, 0.8777555110220441, 0.8797595190380761, 0.8817635270541082, 0.8837675350701403, 0.8857715430861723, 0.8877755511022044, 0.8897795591182365, 0.8917835671342685, 0.8937875751503006, 0.8957915831663327, 0.8977955911823647, 0.8997995991983968, 0.9018036072144289, 0.9038076152304609, 0.905811623246493, 0.9078156312625251, 0.9098196392785571, 0.9118236472945892, 0.9138276553106213, 0.9158316633266533, 0.9178356713426854, 0.9198396793587175, 0.9218436873747495, 0.9238476953907816, 0.9258517034068137, 0.9278557114228457, 0.9298597194388778, 0.9318637274549099, 0.9338677354709419, 0.935871743486974, 0.9378757515030061, 0.9398797595190381, 0.9418837675350702, 0.9438877755511023, 0.9458917835671342, 0.9478957915831663, 0.9498997995991983, 0.9519038076152304, 0.9539078156312625, 0.9559118236472945, 0.9579158316633266, 0.9599198396793587, 0.9619238476953907, 0.9639278557114228, 0.9659318637274549, 0.9679358717434869, 0.969939879759519, 0.9719438877755511, 0.9739478957915831, 0.9759519038076152, 0.9779559118236473, 0.9799599198396793, 0.9819639278557114, 0.9839679358717435, 0.9859719438877755, 0.9879759519038076, 0.9899799599198397, 0.9919839679358717, 0.9939879759519038, 0.9959919839679359, 0.9979959919839679, 1.0])\n", " .range(['#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff']);\n", " \n", "\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.x = d3.scale.linear()\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x = d3.scale.linear()\n", " .domain([0.0, 1.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.legend = L.control({position: 'topright'});\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.legend.addTo(map_d25a0cad6476e7018f7e7ef392916797);\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.legend = L.control({position: 'topright'});\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.legend.addTo(map_b75a1ceac32ddc457d536d0528596633);\n", "\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.xAxis = d3.svg.axis()\n", - " .scale(color_map_ccff4b482151348941da9b9a433bb9ee.x)\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.xAxis = d3.svg.axis()\n", + " .scale(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([0.0, '', 0.2, '', 0.4, '', 0.6, '', 0.8, '', 1.0, '']);\n", "\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.g = color_map_ccff4b482151348941da9b9a433bb9ee.svg.append("g")\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.g = color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.g.selectAll("rect")\n", - " .data(color_map_ccff4b482151348941da9b9a433bb9ee.color.range().map(function(d, i) {\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.g.selectAll("rect")\n", + " .data(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_ccff4b482151348941da9b9a433bb9ee.x(color_map_ccff4b482151348941da9b9a433bb9ee.color.domain()[i - 1]) : color_map_ccff4b482151348941da9b9a433bb9ee.x.range()[0],\n", - " x1: i < color_map_ccff4b482151348941da9b9a433bb9ee.color.domain().length ? color_map_ccff4b482151348941da9b9a433bb9ee.x(color_map_ccff4b482151348941da9b9a433bb9ee.color.domain()[i]) : color_map_ccff4b482151348941da9b9a433bb9ee.x.range()[1],\n", + " x0: i ? color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color.domain()[i - 1]) : color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x.range()[0],\n", + " x1: i < color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color.domain().length ? color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color.domain()[i]) : color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -7575,7 +7728,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_ccff4b482151348941da9b9a433bb9ee.g.call(color_map_ccff4b482151348941da9b9a433bb9ee.xAxis).append("text")\n", + " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.g.call(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -7584,10 +7737,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 26, + "execution_count": 20, "metadata": {}, "output_type": "execute_result" } @@ -7606,7 +7759,7 @@ " attribution=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", " tile_name=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", " opacity=0.8,\n", - " height=\"800px\",\n", + " height=\"890px\",\n", ")\n", "\n", "print(\n", @@ -7619,9 +7772,7 @@ { "cell_type": "markdown", "id": "c78230c8-39be-44ee-920a-1b631d6604e4", - "metadata": { - "jp-MarkdownHeadingCollapsed": true - }, + "metadata": {}, "source": [ "# Example: DOW7-Derived Maximum Velocity Swath (Radar)\n", "\n", @@ -7630,7 +7781,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 21, "id": "efb13664-1597-478a-b8e5-fac20e6ac481", "metadata": {}, "outputs": [ @@ -8552,7 +8703,7 @@ "" ] }, - "execution_count": 28, + "execution_count": 21, "metadata": {}, "output_type": "execute_result" } @@ -8584,7 +8735,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 22, "id": "14d08573-78ea-45bf-baf0-58cddf840401", "metadata": {}, "outputs": [ @@ -8617,7 +8768,7 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 23, "id": "b062836d-83f6-414d-91d2-9255e0b46a3c", "metadata": {}, "outputs": [ @@ -8650,10 +8801,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_2d02d7333991661d086119f801aed28f {\n", + " #map_185e938e41429441c62f1bd1899dd6e8 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 800.0px;\n", + " height: 890.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -8704,14 +8855,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_2d02d7333991661d086119f801aed28f" ></div>\n", + " <div class="folium-map" id="map_185e938e41429441c62f1bd1899dd6e8" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_2d02d7333991661d086119f801aed28f = L.map(\n", - " "map_2d02d7333991661d086119f801aed28f",\n", + " var map_185e938e41429441c62f1bd1899dd6e8 = L.map(\n", + " "map_185e938e41429441c62f1bd1899dd6e8",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -8723,13 +8874,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_2d02d7333991661d086119f801aed28f);\n", + " L.control.scale().addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_15d06143734ce754ade60a8f53f7f11b = L.tileLayer(\n", + " var tile_layer_d75cc4bba1e4d738e62f268348b4a22e = L.tileLayer(\n", " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", " {\n", " "minZoom": 0,\n", @@ -8746,10 +8897,10 @@ " );\n", " \n", " \n", - " tile_layer_15d06143734ce754ade60a8f53f7f11b.addTo(map_2d02d7333991661d086119f801aed28f);\n", + " tile_layer_d75cc4bba1e4d738e62f268348b4a22e.addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", " \n", " \n", - " var tile_layer_8eaf31714b451636ad9d2365bac83c60 = L.tileLayer(\n", + " var tile_layer_131334a227f1bbaf34525155b595a61d = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=gist_ncar\\u0026rescale=55%2C250",\n", " {\n", " "minZoom": 0,\n", @@ -8766,66 +8917,66 @@ " );\n", " \n", " \n", - " tile_layer_8eaf31714b451636ad9d2365bac83c60.addTo(map_2d02d7333991661d086119f801aed28f);\n", + " tile_layer_131334a227f1bbaf34525155b595a61d.addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", " \n", " \n", - " var layer_control_b01f02d4a05a842ec41f341c7473afde_layers = {\n", + " var layer_control_3ed1afd466178793ae484840bfb4c628_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_15d06143734ce754ade60a8f53f7f11b,\n", + " "openstreetmap" : tile_layer_d75cc4bba1e4d738e62f268348b4a22e,\n", " },\n", " overlays : {\n", - " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_8eaf31714b451636ad9d2365bac83c60,\n", + " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_131334a227f1bbaf34525155b595a61d,\n", " },\n", " };\n", - " let layer_control_b01f02d4a05a842ec41f341c7473afde = L.control.layers(\n", - " layer_control_b01f02d4a05a842ec41f341c7473afde_layers.base_layers,\n", - " layer_control_b01f02d4a05a842ec41f341c7473afde_layers.overlays,\n", + " let layer_control_3ed1afd466178793ae484840bfb4c628 = L.control.layers(\n", + " layer_control_3ed1afd466178793ae484840bfb4c628_layers.base_layers,\n", + " layer_control_3ed1afd466178793ae484840bfb4c628_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_2d02d7333991661d086119f801aed28f);\n", + " ).addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", "\n", " \n", " \n", - " var color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d = {};\n", + " var color_map_5d4cf076704581c2aaf5618ffbbec509 = {};\n", "\n", " \n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.color = d3.scale.threshold()\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.color = d3.scale.threshold()\n", " .domain([55.0, 55.390781563126254, 55.78156312625251, 56.17234468937876, 56.56312625250501, 56.95390781563126, 57.344689378757515, 57.73547094188377, 58.12625250501002, 58.51703406813627, 58.90781563126252, 59.298597194388776, 59.68937875751503, 60.08016032064128, 60.47094188376754, 60.86172344689379, 61.25250501002004, 61.64328657314629, 62.034068136272545, 62.4248496993988, 62.81563126252505, 63.2064128256513, 63.59719438877755, 63.987975951903806, 64.37875751503006, 64.76953907815631, 65.16032064128257, 65.55110220440882, 65.94188376753507, 66.33266533066133, 66.72344689378758, 67.11422845691382, 67.50501002004007, 67.89579158316633, 68.28657314629258, 68.67735470941884, 69.06813627254509, 69.45891783567134, 69.8496993987976, 70.24048096192385, 70.6312625250501, 71.02204408817636, 71.4128256513026, 71.80360721442887, 72.1943887775551, 72.58517034068136, 72.97595190380761, 73.36673346693387, 73.75751503006012, 74.14829659318637, 74.53907815631263, 74.92985971943888, 75.32064128256513, 75.71142284569139, 76.10220440881764, 76.49298597194388, 76.88376753507015, 77.27454909819639, 77.66533066132264, 78.0561122244489, 78.44689378757515, 78.8376753507014, 79.22845691382766, 79.61923847695391, 80.01002004008016, 80.40080160320642, 80.79158316633266, 81.18236472945893, 81.57314629258516, 81.96392785571142, 82.35470941883767, 82.74549098196393, 83.13627254509018, 83.52705410821643, 83.91783567134269, 84.30861723446894, 84.6993987975952, 85.09018036072145, 85.4809619238477, 85.87174348697394, 86.26252505010021, 86.65330661322645, 87.04408817635272, 87.43486973947896, 87.82565130260521, 88.21643286573146, 88.60721442885772, 88.99799599198397, 89.38877755511022, 89.77955911823648, 90.17034068136272, 90.56112224448898, 90.95190380761522, 91.34268537074149, 91.73346693386773, 92.12424849699399, 92.51503006012024, 92.90581162324649, 93.29659318637275, 93.687374749499, 94.07815631262525, 94.4689378757515, 94.85971943887776, 95.250501002004, 95.64128256513027, 96.03206412825651, 96.42284569138278, 96.81362725450902, 97.20440881763527, 97.59519038076152, 97.98597194388778, 98.37675350701403, 98.76753507014028, 99.15831663326654, 99.54909819639278, 99.93987975951904, 100.33066132264528, 100.72144288577155, 101.11222444889779, 101.50300601202404, 101.8937875751503, 102.28456913827655, 102.6753507014028, 103.06613226452906, 103.45691382765531, 103.84769539078155, 104.23847695390782, 104.62925851703406, 105.02004008016033, 105.41082164328657, 105.80160320641284, 106.19238476953907, 106.58316633266533, 106.97394789579158, 107.36472945891784, 107.75551102204409, 108.14629258517034, 108.5370741482966, 108.92785571142284, 109.3186372745491, 109.70941883767534, 110.10020040080161, 110.49098196392785, 110.88176352705412, 111.27254509018036, 111.66332665330661, 112.05410821643287, 112.44488977955912, 112.83567134268537, 113.22645290581163, 113.61723446893788, 114.00801603206412, 114.39879759519039, 114.78957915831663, 115.1803607214429, 115.57114228456913, 115.96192384769539, 116.35270541082164, 116.7434869739479, 117.13426853707415, 117.5250501002004, 117.91583166332666, 118.3066132264529, 118.69739478957916, 119.08817635270542, 119.47895791583166, 119.86973947895791, 120.26052104208416, 120.65130260521042, 121.04208416833667, 121.43286573146293, 121.82364729458918, 122.21442885771543, 122.60521042084169, 122.99599198396794, 123.3867735470942, 123.77755511022045, 124.16833667334669, 124.55911823647294, 124.9498997995992, 125.34068136272545, 125.7314629258517, 126.12224448897796, 126.51302605210421, 126.90380761523046, 127.29458917835672, 127.68537074148297, 128.07615230460922, 128.46693386773546, 128.85771543086173, 129.24849699398797, 129.6392785571142, 130.03006012024048, 130.42084168336675, 130.81162324649299, 131.20240480961922, 131.5931863727455, 131.98396793587176, 132.374749498998, 132.76553106212424, 133.1563126252505, 133.54709418837675, 133.937875751503, 134.32865731462925, 134.71943887775552, 135.11022044088176, 135.501002004008, 135.89178356713427, 136.28256513026054, 136.67334669338678, 137.06412825651302, 137.45490981963928, 137.84569138276555, 138.23647294589176, 138.62725450901803, 139.0180360721443, 139.40881763527054, 139.79959919839678, 140.19038076152304, 140.5811623246493, 140.97194388777555, 141.3627254509018, 141.75350701402806, 142.14428857715433, 142.53507014028057, 142.9258517034068, 143.31663326653307, 143.7074148296593, 144.09819639278555, 144.48897795591182, 144.8797595190381, 145.27054108216433, 145.66132264529057, 146.05210420841684, 146.4428857715431, 146.83366733466934, 147.22444889779558, 147.61523046092185, 148.0060120240481, 148.39679358717433, 148.7875751503006, 149.17835671342687, 149.5691382765531, 149.95991983967934, 150.3507014028056, 150.74148296593188, 151.13226452905812, 151.52304609218436, 151.91382765531063, 152.3046092184369, 152.6953907815631, 153.08617234468937, 153.47695390781564, 153.86773547094188, 154.25851703406812, 154.6492985971944, 155.04008016032066, 155.4308617234469, 155.82164328657313, 156.2124248496994, 156.60320641282567, 156.9939879759519, 157.38476953907815, 157.77555110220442, 158.16633266533066, 158.5571142284569, 158.94789579158316, 159.33867735470943, 159.72945891783567, 160.1202404809619, 160.51102204408818, 160.90180360721445, 161.2925851703407, 161.68336673346693, 162.0741482965932, 162.46492985971943, 162.85571142284567, 163.24649298597194, 163.6372745490982, 164.02805611222445, 164.4188376753507, 164.80961923847696, 165.20040080160322, 165.59118236472946, 165.9819639278557, 166.37274549098197, 166.76352705410824, 167.15430861723445, 167.54509018036072, 167.93587174348698, 168.32665330661322, 168.71743486973946, 169.10821643286573, 169.498997995992, 169.88977955911824, 170.28056112224448, 170.67134268537075, 171.062124248497, 171.45290581162325, 171.8436873747495, 172.23446893787576, 172.625250501002, 173.01603206412824, 173.4068136272545, 173.79759519038078, 174.18837675350701, 174.57915831663325, 174.96993987975952, 175.3607214428858, 175.75150300601203, 176.14228456913827, 176.53306613226454, 176.92384769539078, 177.31462925851702, 177.70541082164328, 178.09619238476955, 178.4869739478958, 178.87775551102203, 179.2685370741483, 179.65931863727457, 180.0501002004008, 180.44088176352705, 180.8316633266533, 181.22244488977955, 181.6132264529058, 182.00400801603206, 182.39478957915833, 182.78557114228457, 183.17635270541084, 183.56713426853707, 183.9579158316633, 184.34869739478958, 184.73947895791582, 185.1302605210421, 185.52104208416833, 185.9118236472946, 186.30260521042084, 186.6933867735471, 187.08416833667334, 187.4749498997996, 187.86573146292585, 188.2565130260521, 188.64729458917836, 189.0380761523046, 189.42885771543087, 189.8196392785571, 190.21042084168337, 190.6012024048096, 190.99198396793588, 191.38276553106212, 191.7735470941884, 192.16432865731463, 192.5551102204409, 192.94589178356713, 193.33667334669337, 193.72745490981964, 194.11823647294588, 194.50901803607215, 194.8997995991984, 195.29058116232466, 195.6813627254509, 196.07214428857716, 196.4629258517034, 196.85370741482967, 197.2444889779559, 197.63527054108218, 198.02605210420842, 198.41683366733466, 198.80761523046093, 199.19839679358716, 199.58917835671343, 199.97995991983967, 200.37074148296594, 200.76152304609218, 201.15230460921845, 201.5430861723447, 201.93386773547095, 202.3246492985972, 202.71543086172343, 203.1062124248497, 203.49699398797594, 203.8877755511022, 204.27855711422845, 204.66933867735472, 205.06012024048096, 205.45090180360722, 205.84168336673346, 206.23246492985973, 206.62324649298597, 207.01402805611224, 207.40480961923848, 207.79559118236472, 208.18637274549098, 208.57715430861722, 208.9679358717435, 209.35871743486973, 209.749498997996, 210.14028056112224, 210.5310621242485, 210.92184368737475, 211.31262525050101, 211.70340681362725, 212.0941883767535, 212.48496993987976, 212.875751503006, 213.26653306613227, 213.6573146292585, 214.04809619238478, 214.43887775551102, 214.82965931863728, 215.22044088176352, 215.6112224448898, 216.00200400801603, 216.3927855711423, 216.78356713426854, 217.17434869739478, 217.56513026052104, 217.95591182364728, 218.34669338677355, 218.7374749498998, 219.12825651302606, 219.5190380761523, 219.90981963927857, 220.3006012024048, 220.69138276553107, 221.0821643286573, 221.47294589178355, 221.86372745490982, 222.25450901803606, 222.64529058116233, 223.03607214428857, 223.42685370741484, 223.81763527054107, 224.20841683366734, 224.59919839679358, 224.98997995991985, 225.3807615230461, 225.77154308617236, 226.1623246492986, 226.55310621242484, 226.9438877755511, 227.33466933867734, 227.7254509018036, 228.11623246492985, 228.50701402805612, 228.89779559118236, 229.28857715430863, 229.67935871743487, 230.07014028056113, 230.46092184368737, 230.85170340681364, 231.24248496993988, 231.63326653306612, 232.0240480961924, 232.41482965931863, 232.8056112224449, 233.19639278557113, 233.5871743486974, 233.97795591182364, 234.3687374749499, 234.75951903807615, 235.15030060120242, 235.54108216432866, 235.9318637274549, 236.32264529058116, 236.7134268537074, 237.10420841683367, 237.4949899799599, 237.88577154308618, 238.27655310621242, 238.6673346693387, 239.05811623246493, 239.4488977955912, 239.83967935871743, 240.2304609218437, 240.62124248496994, 241.01202404809618, 241.40280561122245, 241.7935871743487, 242.18436873747495, 242.5751503006012, 242.96593186372746, 243.3567134268537, 243.74749498997997, 244.1382765531062, 244.52905811623248, 244.91983967935872, 245.31062124248496, 245.70140280561122, 246.09218436873746, 246.48296593186373, 246.87374749498997, 247.26452905811624, 247.65531062124248, 248.04609218436875, 248.43687374749499, 248.82765531062125, 249.2184368737475, 249.60921843687376, 250.0])\n", " .range(['#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff']);\n", " \n", "\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.x = d3.scale.linear()\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.x = d3.scale.linear()\n", " .domain([55.0, 250.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.legend = L.control({position: 'topright'});\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.legend.addTo(map_2d02d7333991661d086119f801aed28f);\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.legend = L.control({position: 'topright'});\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.legend.addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", "\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.xAxis = d3.svg.axis()\n", - " .scale(color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.x)\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.xAxis = d3.svg.axis()\n", + " .scale(color_map_5d4cf076704581c2aaf5618ffbbec509.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([55.0, '', 94.0, '', 133.0, '', 172.0, '', 211.0, '', 250.0, '']);\n", "\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.g = color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.svg.append("g")\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.g = color_map_5d4cf076704581c2aaf5618ffbbec509.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.g.selectAll("rect")\n", - " .data(color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.color.range().map(function(d, i) {\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.g.selectAll("rect")\n", + " .data(color_map_5d4cf076704581c2aaf5618ffbbec509.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.x(color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.color.domain()[i - 1]) : color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.x.range()[0],\n", - " x1: i < color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.color.domain().length ? color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.x(color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.color.domain()[i]) : color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.x.range()[1],\n", + " x0: i ? color_map_5d4cf076704581c2aaf5618ffbbec509.x(color_map_5d4cf076704581c2aaf5618ffbbec509.color.domain()[i - 1]) : color_map_5d4cf076704581c2aaf5618ffbbec509.x.range()[0],\n", + " x1: i < color_map_5d4cf076704581c2aaf5618ffbbec509.color.domain().length ? color_map_5d4cf076704581c2aaf5618ffbbec509.x(color_map_5d4cf076704581c2aaf5618ffbbec509.color.domain()[i]) : color_map_5d4cf076704581c2aaf5618ffbbec509.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -8835,7 +8986,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.g.call(color_map_27107dcf0fe84bcdc3882b9e8b8d5b1d.xAxis).append("text")\n", + " color_map_5d4cf076704581c2aaf5618ffbbec509.g.call(color_map_5d4cf076704581c2aaf5618ffbbec509.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -8844,10 +8995,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 30, + "execution_count": 23, "metadata": {}, "output_type": "execute_result" } @@ -8867,7 +9018,7 @@ " attribution=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", " tile_name=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", " opacity=0.8,\n", - " height=\"800px\",\n", + " height=\"890px\",\n", ")\n", "\n", "print(\n", @@ -8880,31 +9031,21 @@ { "cell_type": "markdown", "id": "6d9e15cb-bd9b-4439-8df3-83347673eebf", - "metadata": { - "jp-MarkdownHeadingCollapsed": true - }, + "metadata": {}, "source": [ "# Clean Up (Optional)\n", "\n", "\n", - "Remove any **.gif** files that were created to save on storage space. Additionally, remove any **core** files that were created if the kernel crashed." + "Remove any **core** files that were created if the kernel crashed." ] }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 24, "id": "7bd64da5-fdb4-44d8-a0dc-3ed4b1160a12", "metadata": {}, "outputs": [], "source": [ - "# find all .gif files in the current directory\n", - "for gif_path in glob.glob(\"*.gif\"):\n", - " try:\n", - " os.remove(gif_path)\n", - " print(f\"Removed {gif_path}\")\n", - " except OSError as e:\n", - " print(f\"Error removing {gif_path}: {e}\")\n", - "\n", "# find all core files in the current directory\n", "for core_path in glob.glob(\"core.*\"):\n", " try:\n", @@ -8913,19 +9054,11 @@ " except OSError as e:\n", " print(f\"Error removing {core_path}: {e}\")" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "d22c6621-b51a-43eb-a565-af4896aa0e7a", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "gdal", "language": "python", "name": "python3" }, From 911d479c7fe765b652d00f885eb5809957e7e971 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 15 Aug 2025 17:22:24 -0500 Subject: [PATCH 03/28] update tornado plot utils and notebook --- user-guide/notebooks/stories/plotutils.py | 550 ++++- .../stories/tornadoes_2024_notebook.ipynb | 1809 ++++++++--------- 2 files changed, 1341 insertions(+), 1018 deletions(-) diff --git a/user-guide/notebooks/stories/plotutils.py b/user-guide/notebooks/stories/plotutils.py index 69ca66d9..d0a40828 100644 --- a/user-guide/notebooks/stories/plotutils.py +++ b/user-guide/notebooks/stories/plotutils.py @@ -1,7 +1,7 @@ import folium -from folium import Map, TileLayer, Element +from folium import Map, Element from folium.raster_layers import ImageOverlay -from folium.plugins import FloatImage +from folium.plugins import FloatImage, SideBySideLayers import numpy as np import xarray as xr import matplotlib.pyplot as plt @@ -21,7 +21,7 @@ import ipywidgets as widgets -def plot_folium_from_xarray(dataset, day_select, bbox, var_name_for_title, flipud, matplot_ramp, zoom_level, save_tif=False, tif_filename=None, crs=None, opacity=0.8): +def plot_folium_from_xarray(dataset, day_select, bbox, var_name_for_title, flipud, matplot_ramp, zoom_level, save_tif=False, tif_filename=None, crs=None, opacity=0.8, basemap_style='cartodb-positron'): """ Plot a selected day's xarray data on an interactive Folium map with a colorbar. @@ -41,6 +41,9 @@ def plot_folium_from_xarray(dataset, day_select, bbox, var_name_for_title, flipu If True, saves the selected slice to GeoTIFF file. tif_filename : str, optional Full output filename for the GeoTIFF (must end in .tif). + basemap_style : str, optional + Basemap style to use (default 'cartodb-positron'). + See get_available_basemaps() for options. Returns ------- @@ -162,9 +165,15 @@ def plot_folium_from_xarray(dataset, day_select, bbox, var_name_for_title, flipu m = Map( location=[ (lat_bottom+lat_top)/2, (lon_left+lon_right)/2 ], - zoom_start=zoom_level + zoom_start=zoom_level, + tiles=None # We'll add basemap separately ) - TileLayer("CartoDB positron").add_to(m) + + # Add basemap + try: + add_basemap_to_map(m, basemap_style) + except Exception as e: + print(f"Warning: Could not add basemap '{basemap_style}': {e}. Continuing without basemap.") ImageOverlay( image=image_list, @@ -327,6 +336,248 @@ def load_preview(path: str, target_width: int = 800) -> np.ndarray: return np.array(resized) +def get_available_basemaps() -> dict: + """ + Get a dictionary of available basemap styles and their descriptions. + + Returns + ------- + dict + Dictionary mapping basemap style names to their descriptions + """ + return { + 'openstreetmap': 'OpenStreetMap standard tiles', + 'cartodb-positron': 'Light gray CartoDB basemap (subtle, good for data visualization)', + 'cartodb-dark': 'Dark CartoDB basemap (good for bright data)', + 'esri-satellite': 'ESRI satellite imagery without labels', + 'esri-satellite-labels': 'ESRI satellite imagery with place labels overlay', + None: 'No basemap (transparent background)' + } + + +def add_basemap_to_map(m: folium.Map, basemap_style: str) -> None: + """ + Add a basemap layer to a Folium map with error checking. + + Parameters + ---------- + m : folium.Map + The Folium map object to add the basemap to + basemap_style : str + The style of basemap to add. Options: + - 'openstreetmap': OpenStreetMap standard tiles + - 'cartodb-positron': Light gray CartoDB basemap + - 'cartodb-dark': Dark CartoDB basemap + - 'esri-satellite': ESRI satellite imagery + - 'esri-satellite-labels': ESRI satellite with place labels overlay + - None: No basemap added + + Raises + ------ + ValueError + If an invalid basemap_style is provided + TypeError + If m is not a folium.Map object + + Returns + ------- + None + Modifies the map in place + """ + # Type checking + if not isinstance(m, (folium.Map, Map)): + raise TypeError(f"Expected folium.Map object, got {type(m).__name__}") + + # Skip if no basemap requested + if basemap_style is None or basemap_style == "": + return + + # Validate basemap_style + valid_styles = { + 'openstreetmap', 'cartodb-positron', 'cartodb-dark', + 'esri-satellite', 'esri-satellite-labels' + } + + if not isinstance(basemap_style, str): + raise TypeError(f"basemap_style must be a string, got {type(basemap_style).__name__}") + + if basemap_style not in valid_styles: + raise ValueError( + f"Invalid basemap_style '{basemap_style}'. " + f"Valid options are: {', '.join(sorted(valid_styles))}, or None" + ) + + # Add the appropriate basemap + try: + if basemap_style == 'openstreetmap': + folium.TileLayer('openstreetmap', name='OpenStreetMap').add_to(m) + + elif basemap_style == 'cartodb-positron': + folium.TileLayer('cartodbpositron', name='CartoDB Positron').add_to(m) + + elif basemap_style == 'cartodb-dark': + folium.TileLayer('cartodbdark_matter', name='CartoDB Dark').add_to(m) + + elif basemap_style == 'esri-satellite': + folium.TileLayer( + tiles='https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', + attr='Esri', + name='ESRI Satellite', + overlay=False, + control=True + ).add_to(m) + + elif basemap_style == 'esri-satellite-labels': + # Add satellite imagery + folium.TileLayer( + tiles='https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', + attr='Esri', + name='ESRI Satellite', + overlay=False, + control=True + ).add_to(m) + # Add reference overlay with cities, towns, and street labels + folium.TileLayer( + tiles='https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}', + attr='Esri', + name='Place Labels', + overlay=True, + control=True, + show=True + ).add_to(m) + + except Exception as e: + raise RuntimeError(f"Failed to add basemap '{basemap_style}': {str(e)}") + + +def add_custom_html_legend(m: folium.Map, custom_colors: list, colorbar_caption: str, + position: str = "top", top_offset: int = 50) -> None: + """ + Add a custom HTML legend with discrete color categories to a Folium map. + + Parameters + ---------- + m : folium.Map + The Folium map object to add the legend to + custom_colors : list + List of dictionaries with 'color', 'label', and optionally 'value' keys. + Example: [{"color": "#add8e6", "label": "EF0", "value": 0}, ...] + colorbar_caption : str + Caption/title for the legend (e.g., "EF Rating") + position : str, optional + Position of the legend. Options: "top", "bottom", "left", "right" (default "top") + top_offset : int, optional + Pixels from top when position="top" (default 50) + + Returns + ------- + None + Modifies the map in place by adding the HTML legend + + Raises + ------ + ValueError + If custom_colors is empty or invalid format + TypeError + If m is not a folium.Map object + """ + from branca.element import Template, MacroElement + + # Type checking + if not isinstance(m, (folium.Map, Map)): + raise TypeError(f"Expected folium.Map object, got {type(m).__name__}") + + # Validate custom_colors + if not custom_colors: + raise ValueError("custom_colors list cannot be empty") + + if not isinstance(custom_colors, list): + raise TypeError(f"custom_colors must be a list, got {type(custom_colors).__name__}") + + # Validate each color entry + for i, cat in enumerate(custom_colors): + if not isinstance(cat, dict): + raise TypeError(f"custom_colors[{i}] must be a dict, got {type(cat).__name__}") + if 'color' not in cat or 'label' not in cat: + raise ValueError(f"custom_colors[{i}] must have 'color' and 'label' keys") + + # Set position styles based on position parameter + if position == "top": + position_style = f""" + position: fixed; + top: {top_offset}px; + left: 50%; + transform: translateX(-50%); + """ + elif position == "bottom": + position_style = """ + position: fixed; + bottom: 50px; + left: 50%; + transform: translateX(-50%); + """ + elif position == "left": + position_style = """ + position: fixed; + top: 50%; + left: 20px; + transform: translateY(-50%); + """ + elif position == "right": + position_style = """ + position: fixed; + top: 50%; + right: 20px; + transform: translateY(-50%); + """ + else: + raise ValueError(f"Invalid position '{position}'. Must be 'top', 'bottom', 'left', or 'right'") + + # Build the HTML legend + legend_html = ''' + {% macro html(this, kwargs) %} +
+

''' + colorbar_caption + '''

+
+ ''' + + for cat in custom_colors: + legend_html += f''' +
+ + {cat['label']} +
+ ''' + + legend_html += ''' +
+
+ {% endmacro %} + ''' + + # Create and add the legend to the map + custom_legend = MacroElement() + custom_legend._template = Template(legend_html) + m.get_root().add_child(custom_legend) + + def create_pausable_blend_slider(img1_path, img2_path, width=800): """ Creates an interactive slider to blend between two images, @@ -410,6 +661,7 @@ def plot_folium_from_VEDA_STAC( zoom_level: int = 6, rescale: tuple = (0, 1), colormap_name: str = "viridis", + custom_colors: list = None, layer_name: str = "VEDA Data", date: str = None, colorbar_caption: str = "Value", @@ -418,7 +670,9 @@ def plot_folium_from_VEDA_STAC( opacity: float = 0.8, width: str = "100%", height: str = "500px", - capitalize_cmap: bool = False + capitalize_cmap: bool = False, + remove_default_legend: bool = False, + basemap_style: str = "cartodb-positron" ) -> folium.Map: """ Create a Folium map displaying VEDA STAC data with a colorbar and title. @@ -435,6 +689,10 @@ def plot_folium_from_VEDA_STAC( (vmin, vmax) values for data scaling (default (0, 1)) colormap_name : str, optional Name of the colormap (default "viridis") + custom_colors : list, optional + List of dicts with 'value', 'color', and 'label' keys for categorical data legend. + When provided, ONLY the HTML legend will be shown (no LinearColormap). + Example: [{"value": 0, "color": "#add8e6", "label": "EF0"}, ...] layer_name : str, optional Display name for the layer and title (default "VEDA Data") date : str, optional @@ -453,12 +711,20 @@ def plot_folium_from_VEDA_STAC( Map height (default "500px") capitalize_cmap : bool, optional Whether to apply alternating capitalization to colormap name (default False) + remove_default_legend : bool, optional + Whether to remove the default LinearColormap colorbar (default False). + Note: Ignored when custom_colors is provided (HTML legend used instead) + basemap_style : str, optional + Basemap style to use. Options: 'openstreetmap', 'cartodb-positron', 'cartodb-dark', + 'esri-satellite', 'esri-satellite-labels', None (default 'cartodb-positron') Returns ------- folium.Map The configured Folium map object """ + + # Apply colormap name transformation if requested if capitalize_cmap: cmap_name = "".join( @@ -482,10 +748,17 @@ def plot_folium_from_VEDA_STAC( width=width, height=height, control_scale=True, - crs="EPSG3857" + crs="EPSG3857", + tiles=None # We'll add tiles separately ) - # Add the Tile Layer to the Map + # Add basemap + try: + add_basemap_to_map(m, basemap_style) + except Exception as e: + print(f"Warning: Could not add basemap '{basemap_style}': {e}. Continuing without basemap.") + + # Add the VEDA data Tile Layer to the Map folium.TileLayer( tiles=tiles_url_template, attr=attribution, @@ -499,26 +772,44 @@ def plot_folium_from_VEDA_STAC( # Add Layer Control folium.LayerControl().add_to(m) - # Add Colorbar (Legend) - steps = 10 - mpl_cmap = plt.get_cmap(cmap_name) - colors = [mpl_cmap(i / (steps - 1)) for i in range(steps)] - - legend = LinearColormap( - colors=colors, - vmin=vmin_val, - vmax=vmax_val, - caption=colorbar_caption - ).to_step(steps) + # Handle colorbar/legend with clear, mutually exclusive logic + if custom_colors: + # For categorical data, ONLY use HTML legend (no LinearColormap) + # HTML legend is added later in the function via add_custom_html_legend() + pass # Don't add LinearColormap for categorical data + + elif not remove_default_legend: + # For continuous data, add LinearColormap + steps = 10 + mpl_cmap = plt.get_cmap(cmap_name) + colors = [mpl_cmap(i / (steps - 1)) for i in range(steps)] + + legend = LinearColormap( + colors=colors, + vmin=vmin_val, + vmax=vmax_val, + caption=colorbar_caption + ).to_step(steps) + + legend.add_to(m) + # else: remove_default_legend=True and no custom_colors = no legend at all - legend.add_to(m) + # Add custom HTML legend if provided + if custom_colors: + try: + add_custom_html_legend(m, custom_colors, colorbar_caption, position="top", top_offset=50) + except (ValueError, TypeError) as e: + print(f"Warning: Could not add custom legend: {e}") # Add Dynamic Title if date is provided if date: - try: - formatted_date = pd.to_datetime(date).strftime('%B %d, %Y') - except Exception: + # Handle various date formats + if '(' in str(date) and ')' in str(date): + # Handle cases like "(March-May 2024)" formatted_date = str(date) + else: + # Convert standard date formats + formatted_date = pd.to_datetime(date).strftime('%B %d, %Y') title_html = f"""
folium.Map: + """ + Create a Folium map with side-by-side layer comparison using a draggable slider. + + Uses the Leaflet leaflet-side-by-side plugin to create an interactive comparison + between two tile layers. The user can drag a vertical slider to reveal more of + either layer. + + Parameters + ---------- + tiles_url_left : str + Tile URL template for the left layer (with {z}, {x}, {y} placeholders) + tiles_url_right : str + Tile URL template for the right layer (with {z}, {x}, {y} placeholders) + center_coords : list + [latitude, longitude] for map center + zoom_level : int, optional + Initial zoom level (default 14) + title : str, optional + Main title displayed at top of map (default "Side-by-Side Comparison") + label_left : str, optional + Label for left layer, e.g., "Reflectivity (-10 to 50 dBZ)" (default "Left Layer") + label_right : str, optional + Label for right layer, e.g., "Velocity (-75 to 75 m/s)" (default "Right Layer") + layer_name_left : str, optional + Name for left layer in layer control (default "Left Layer") + layer_name_right : str, optional + Name for right layer in layer control (default "Right Layer") + opacity : float, optional + Opacity for both layers, between 0 and 1 (default 0.8) + basemap_style : str, optional + Basemap style to use. Options: 'openstreetmap', 'cartodb-positron', + 'cartodb-dark', 'esri-satellite', 'esri-satellite-labels', None + (default 'esri-satellite-labels') + height : str, optional + Map height as CSS string (default "800px") + width : str, optional + Map width as CSS string (default "100%") + + Returns + ------- + folium.Map + The configured Folium map object with side-by-side layers + + Examples + -------- + >>> # Create a comparison of two radar products + >>> m = create_side_by_side_map( + ... tiles_url_left="https://example.com/reflectivity/{z}/{x}/{y}.png", + ... tiles_url_right="https://example.com/velocity/{z}/{x}/{y}.png", + ... center_coords=[41.668, -95.372], + ... zoom_level=14, + ... title="DOW7 Radar Comparison", + ... label_left="← Reflectivity (dBZ)", + ... label_right="Velocity (m/s) β†’" + ... ) + >>> m + + Notes + ----- + - Both tile layers must be added to the map before being passed to SideBySideLayers + - The slider divides the view vertically; left layer shows on left, right layer on right + - Basemap is added beneath both comparison layers for context + - HTML elements are used for title, labels, and description positioning + """ + + # Create the base map + m = folium.Map( + location=center_coords, + zoom_start=zoom_level, + control_scale=True, + width=width, + height=height, + tiles=None # We'll add basemap separately + ) + + # Add basemap if specified + if basemap_style: + try: + add_basemap_to_map(m, basemap_style) + except Exception as e: + print(f"Warning: Could not add basemap '{basemap_style}': {e}. Continuing without basemap.") + + # Create left layer + layer_left = folium.TileLayer( + tiles=tiles_url_left, + attr=layer_name_left, + name=layer_name_left, + overlay=True, + control=True, + opacity=opacity, + tms=False + ) + + # Create right layer + layer_right = folium.TileLayer( + tiles=tiles_url_right, + attr=layer_name_right, + name=layer_name_right, + overlay=True, + control=True, + opacity=opacity, + tms=False + ) + + # IMPORTANT: Add layers to map BEFORE using in SideBySideLayers + # This is required by the plugin + layer_left.add_to(m) + layer_right.add_to(m) + + # Create and add the SideBySideLayers plugin + sbs = SideBySideLayers( + layer_left=layer_left, + layer_right=layer_right + ) + sbs.add_to(m) + + # Add layer control for basemap options + folium.LayerControl().add_to(m) + + # Add title to the map + title_html = f""" +
+ {title} +
+ """ + m.get_root().html.add_child(Element(title_html)) + + # Add labels for left and right panels + labels_html = f""" +
+ {label_left} +
+
+ {label_right} +
+ """ + m.get_root().html.add_child(Element(labels_html)) + + # Add description text at the bottom if provided + description_html = f""" +
+ Drag the slider to compare rendered tiles. +
+ """ + m.get_root().html.add_child(Element(description_html)) + + return m + diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 23f5ffc9..502154a4 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -14,7 +14,7 @@ "description: A detailed overview of the historic season.\n", "author:\n", " - Andrew Blackford (UAH), Trent Cowan (UAH), Udaysankar Nair (UAH), Josh Wurman (CSU), Karen Kosiba (CSU), David Roueche (AU), Catherine Finley (UND), and Jana Houser (OSU)\n", - " - Andrew Blackford (editor)\n", + " - Andrew Blackford and Kyle Lesinger (editors)\n", "date: August 13, 2025\n", "execute:\n", " freeze: true\n", @@ -73,32 +73,53 @@ "outputs": [], "source": [ "# Load libraries\n", - "#!pip install -q earthaccess pandas xarray fsspec requests branca pystac_client\n", + "#!pip install -q earthaccess pandas xarray fsspec requests branca pystac_client matplotlib\n", "\n", - "import datetime\n", "import glob\n", "import os\n", - "import folium\n", - "from branca.element import Template, MacroElement\n", - "import earthaccess\n", - "import pandas as pd\n", - "import plotutils as putils\n", "import requests\n", - "import xarray as xr\n", - "from earthaccess import Store\n", - "from pystac_client import Client" + "import matplotlib as mpl\n", + "import matplotlib.pyplot as plt\n", + "import plotutils as putils\n", + "from pystac_client import Client\n", + "import folium" ] }, { "cell_type": "code", "execution_count": 2, + "id": "1aafe340", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import importlib\n", + "importlib.reload(putils)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, "id": "8fc9234c-975b-485d-bfb3-d9100ff3b12d", "metadata": {}, "outputs": [], "source": [ "# For retrieving data already catalogued in VEDA STAC\n", "STAC_API_URL = \"https://openveda.cloud/api/stac\"\n", - "RASTER_API_URL = \"https://openveda.cloud/api/raster\"" + "RASTER_API_URL = \"https://openveda.cloud/api/raster\"\n", + "\n", + "# Open STAC client designed for interacting with SpatioTemporal Asset Catalog (STAC) APIs and Catalogs\n", + "client_STAC = Client.open(STAC_API_URL)" ] }, { @@ -151,7 +172,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 4, "id": "f1ef497a-4fa7-499c-8237-21f4cad1d45b", "metadata": {}, "outputs": [ @@ -1009,15 +1030,13 @@ "" ] }, - "execution_count": 3, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# TODO: Change collection_ID and date\n", - "client_STAC = Client.open(STAC_API_URL)\n", - "\n", "collection_id = \"tornadoes-2024-paths\"\n", "date = \"2024-05-31\"\n", "\n", @@ -1034,15 +1053,15 @@ "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", "\n", "assets = dashboard_render[\"assets\"][0]\n", - "#((vmin, vmax),) = dashboard_render[\"rescale\"]\n", - "((vmin, vmax),) = ((0,5),)\n", + "# Use the same information as tornado paths for vmin and vmax range\n", + "(vmin, vmax) = (0,6)\n", "\n", "collection" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "id": "b3bafa71-607c-49cc-9e5f-8f3d2f882410", "metadata": {}, "outputs": [ @@ -1050,22 +1069,20 @@ "name": "stdout", "output_type": "stream", "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=0%2C5'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-103.501720443, 18.467731627, -66.701720443, 46.592731627], 'center': [-85.101720443, 32.530231627, 0]}\n" + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&colormap_name=tornado_ef_scale'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-103.501720443, 18.467731627, -66.701720443, 46.592731627], 'center': [-85.101720443, 32.530231627, 0]}\n" ] } ], "source": [ - "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "#colormap_name = \"tornado_ef_scale\"\n", - "colormap_name = \"turbo\"\n", + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────\n", + "colormap_name = \"tornado_ef_scale\"\n", "\n", - "# Build endpoint URL without worrying about trailing slashes\n", + "# Build endpoint URL. Do not add rescale parameters with discrete data\n", "response = requests.get(\n", " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", " f\"&assets={assets}\"\n", - " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", - " f\"&rescale={vmin},{vmax}\",\n", + " f\"&colormap_name={colormap_name}\"\n", ")\n", "\n", "response.raise_for_status()\n", @@ -1084,7 +1101,35 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, + "id": "9d17e195", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'openstreetmap': 'OpenStreetMap standard tiles',\n", + " 'cartodb-positron': 'Light gray CartoDB basemap (subtle, good for data visualization)',\n", + " 'cartodb-dark': 'Dark CartoDB basemap (good for bright data)',\n", + " 'esri-satellite': 'ESRI satellite imagery without labels',\n", + " 'esri-satellite-labels': 'ESRI satellite imagery with place labels overlay',\n", + " None: 'No basemap (transparent background)'}" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# First we will present the different basemaps that we have access to underlay beneath our tile requests\n", + "# For the first map, we will utilize the 'esri-satellite-labels' map layer\n", + "putils.get_available_basemaps()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, "id": "9af1c710-0423-4d3e-9c93-4fff13d1dab5", "metadata": {}, "outputs": [ @@ -1110,10 +1155,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_a549248a96f7ec8817728a7eddc8fc67 {\n", + " #map_b30f461f6cc6bc77374783c9b80a08bb {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 890.0px;\n", + " height: 800.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -1163,116 +1208,154 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_a549248a96f7ec8817728a7eddc8fc67" ></div>\n", + " <div class="folium-map" id="map_b30f461f6cc6bc77374783c9b80a08bb" ></div>\n", " \n", " \n", - "<div style="\n", - " position: fixed; \n", - " bottom: 150px; \n", - " left: 1300px; \n", - " width: 120px; \n", - " height: auto; \n", - " background-color: white; \n", - " border:2px solid grey; \n", - " z-index:9999; \n", - " font-size:20px;\n", - " padding: 10px;\n", - " box-shadow: 2px 2px 6px rgba(0,0,0,0.3);\n", - " ">\n", - " <p style="margin: 0 0 10px 0; font-weight: bold; text-align: center;">EF Rating</p>\n", - "\n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #573F5D; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF0</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #62B5F7; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF1</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #74F88E; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF2</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #E9DD61; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF3</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #EE7545; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF4</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #FF0000; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF5</span>\n", + " <div style="\n", + " \n", + " position: fixed; \n", + " top: 50px; \n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " \n", + " width: auto;\n", + " max-width: 90%;\n", + " height: auto; \n", + " background-color: white; \n", + " border: 2px solid grey; \n", + " z-index: 9999; \n", + " font-size: 14px;\n", + " padding: 8px 15px;\n", + " box-shadow: 2px 2px 6px rgba(0,0,0,0.3);\n", + " border-radius: 4px;\n", + " ">\n", + " <p style="margin: 0 0 8px 0; font-weight: bold; text-align: center; font-size: 16px;">EF Rating</p>\n", + " <div style="display: flex; justify-content: center; align-items: center; gap: 15px; flex-wrap: wrap;">\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #add8e6; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF0</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #90ee90; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF1</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #ffe71f; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF2</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #ffa500; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF3</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #ff0000; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF4</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #ff00ff; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF5</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #b3bcc9; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EFU</span>\n", + " </div>\n", + " \n", + " </div>\n", " </div>\n", " \n", - "</div>\n", "</body>\n", "<script>\n", " \n", " \n", - " var map_a549248a96f7ec8817728a7eddc8fc67 = L.map(\n", - " "map_a549248a96f7ec8817728a7eddc8fc67",\n", + " var map_b30f461f6cc6bc77374783c9b80a08bb = L.map(\n", + " "map_b30f461f6cc6bc77374783c9b80a08bb",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", " ...{\n", - " "zoom": 9,\n", + " "zoom": 10,\n", " "zoomControl": true,\n", " "preferCanvas": false,\n", "}\n", "\n", " }\n", " );\n", - " L.control.scale().addTo(map_a549248a96f7ec8817728a7eddc8fc67);\n", + " L.control.scale().addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_92294d2f33dce1f495a2347692aa6767 = L.tileLayer(\n", - " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", + " var tile_layer_c29c12631f1d677ab68fb3f8882e6170 = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", + " {\n", + " "minZoom": 0,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", + " "noWrap": false,\n", + " "attribution": "Esri",\n", + " "subdomains": "abc",\n", + " "detectRetina": false,\n", + " "tms": false,\n", + " "opacity": 1,\n", + "}\n", + "\n", + " );\n", + " \n", + " \n", + " tile_layer_c29c12631f1d677ab68fb3f8882e6170.addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", + " \n", + " \n", + " var tile_layer_2919f1d487feaf5c0c2a8cde2eef32ce = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", - " "maxZoom": 19,\n", - " "maxNativeZoom": 19,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", " "noWrap": false,\n", - " "attribution": "\\u0026copy; \\u003ca href=\\"https://www.openstreetmap.org/copyright\\"\\u003eOpenStreetMap\\u003c/a\\u003e contributors",\n", + " "attribution": "Esri",\n", " "subdomains": "abc",\n", " "detectRetina": false,\n", " "tms": false,\n", @@ -1282,11 +1365,11 @@ " );\n", " \n", " \n", - " tile_layer_92294d2f33dce1f495a2347692aa6767.addTo(map_a549248a96f7ec8817728a7eddc8fc67);\n", + " tile_layer_2919f1d487feaf5c0c2a8cde2eef32ce.addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", " \n", " \n", - " var tile_layer_e6f1f5193e3692db64acdc8d45bb1e98 = L.tileLayer(\n", - " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C5",\n", + " var tile_layer_2feddf7d2f500fbc92b313060e8294af = L.tileLayer(\n", + " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", " "maxZoom": 18,\n", @@ -1302,60 +1385,76 @@ " );\n", " \n", " \n", - " tile_layer_e6f1f5193e3692db64acdc8d45bb1e98.addTo(map_a549248a96f7ec8817728a7eddc8fc67);\n", + " tile_layer_2feddf7d2f500fbc92b313060e8294af.addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", " \n", " \n", - " var layer_control_04ce080c0634bab1301d1ec08affd806_layers = {\n", + " var layer_control_58b8c099aa8503abd3eb661e50747428_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_92294d2f33dce1f495a2347692aa6767,\n", + " "ESRI Satellite" : tile_layer_c29c12631f1d677ab68fb3f8882e6170,\n", " },\n", " overlays : {\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_e6f1f5193e3692db64acdc8d45bb1e98,\n", + " "Place Labels" : tile_layer_2919f1d487feaf5c0c2a8cde2eef32ce,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_2feddf7d2f500fbc92b313060e8294af,\n", " },\n", " };\n", - " let layer_control_04ce080c0634bab1301d1ec08affd806 = L.control.layers(\n", - " layer_control_04ce080c0634bab1301d1ec08affd806_layers.base_layers,\n", - " layer_control_04ce080c0634bab1301d1ec08affd806_layers.overlays,\n", + " let layer_control_58b8c099aa8503abd3eb661e50747428 = L.control.layers(\n", + " layer_control_58b8c099aa8503abd3eb661e50747428_layers.base_layers,\n", + " layer_control_58b8c099aa8503abd3eb661e50747428_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_a549248a96f7ec8817728a7eddc8fc67);\n", + " ).addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>
" ], "text/plain": [ - "" + "" ] }, - "execution_count": 5, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# Create custom EF scale legend only (no HTML colorbar)\n", + "# Define EF scale categories with specific colors to replicate predefined colorscale in VEDA backend. \n", + "# Colors have been predifined in veda-backend https://github.com/NASA-IMPACT/veda-backend/tree/develop/raster_api/runtime/src/cmap_data#tornadoes-colormap\n", "\n", - "# Define EF scale categories with your specific colors\n", "ef_categories = [\n", - " {\"color\": \"#573F5D\", \"label\": \"EF0\", \"value\": 0},\n", - " {\"color\": \"#62B5F7\", \"label\": \"EF1\", \"value\": 1},\n", - " {\"color\": \"#74F88E\", \"label\": \"EF2\", \"value\": 2},\n", - " {\"color\": \"#E9DD61\", \"label\": \"EF3\", \"value\": 3},\n", - " {\"color\": \"#EE7545\", \"label\": \"EF4\", \"value\": 4},\n", - " {\"color\": \"#FF0000\", \"label\": \"EF5\", \"value\": 5}\n", + " {\"color\": \"#add8e6\", \"label\": \"EF0\", \"value\": 0}, # Light blue\n", + " {\"color\": \"#90ee90\", \"label\": \"EF1\", \"value\": 1}, # Green\n", + " {\"color\": \"#ffe71f\", \"label\": \"EF2\", \"value\": 2}, # Yellow\n", + " {\"color\": \"#ffa500\", \"label\": \"EF3\", \"value\": 3}, # Orange\n", + " {\"color\": \"#ff0000\", \"label\": \"EF4\", \"value\": 4}, # Red\n", + " {\"color\": \"#ff00ff\", \"label\": \"EF5\", \"value\": 5}, # Pink\n", + " {\"color\": \"#b3bcc9\", \"label\": \"EFU\", \"value\": 6} # Gray-blue (Unknown)\n", "]\n", "\n", - "# Create the base map using VEDA STAC\n", + "# Extract colors from ef_categories\n", + "ef_colors = [cat[\"color\"] for cat in ef_categories]\n", + "n_bins = len(ef_colors)\n", + "\n", + "# Create a discrete colormap\n", + "cmap_tornado = mpl.colors.ListedColormap(ef_colors, name='tornado_ef_scale')\n", + "\n", + "\n", + "# Register the colormap with matplotlib using the new method [for newer matplotlib versions (3.5+)]\n", + "try:\n", + " plt.colormaps.register(cmap_tornado)\n", + "except ValueError:\n", + " pass #Custom colormap scale already applied. This is necessary if you re-run this cell block.\n", + "\n", "m = putils.plot_folium_from_VEDA_STAC(\n", " tiles_url_template=tiles[\"tiles\"][0],\n", " center_coords=[41.31, -94.46],\n", - " zoom_level=9,\n", + " zoom_level=10,\n", " rescale=(vmin, vmax),\n", - " colormap_name=colormap_name,\n", + " colormap_name='tornado_ef_scale',\n", + " custom_colors=ef_categories,\n", " capitalize_cmap=False,\n", " layer_name=\"Tornado Tracks\",\n", " date=\"(March-May 2024)\",\n", @@ -1363,61 +1462,11 @@ " attribution=\"VEDA - NWS DAT Tornado Tracks\",\n", " tile_name=\"Tornado Tracks (March-May 2024)\",\n", " opacity=0.8,\n", - " height=\"890px\",\n", + " height=\"800px\",\n", + " remove_default_legend=False, # Only show custom legend\n", + " basemap_style=\"esri-satellite-labels\" # Use ESRI satellite with city/town labels\n", ")\n", "\n", - "# Remove ALL colorbars and color maps\n", - "keys_to_remove = []\n", - "for key in m._children.keys():\n", - " if 'color' in key.lower() or 'legend' in key.lower():\n", - " keys_to_remove.append(key)\n", - "for key in keys_to_remove:\n", - " del m._children[key]\n", - "\n", - "# Create custom legend with specific colors\n", - "legend_html = '''\n", - "{% macro html(this, kwargs) %}\n", - "
\n", - "

EF Rating

\n", - "'''\n", - "\n", - "for cat in ef_categories:\n", - " legend_html += f'''\n", - "
\n", - " \n", - " {cat['label']}\n", - "
\n", - " '''\n", - "\n", - "legend_html += '''\n", - "
\n", - "{% endmacro %}\n", - "'''\n", - "\n", - "# Create a MacroElement to add the legend\n", - "legend = MacroElement()\n", - "legend._template = Template(legend_html)\n", - "\n", - "# Add the legend to the map\n", - "m.get_root().add_child(legend)\n", - "\n", "# Display the map\n", "m" ] @@ -1434,7 +1483,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 8, "id": "965db310-ee99-4af3-96a8-00e63854351d", "metadata": {}, "outputs": [ @@ -2312,15 +2361,13 @@ "" ] }, - "execution_count": 6, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# TODO: Change collection_ID and date\n", - "client_STAC = Client.open(STAC_API_URL)\n", - "\n", "collection_id = \"tornadoes-2024-polygons\"\n", "date = \"2024-05-31\"\n", "\n", @@ -2337,49 +2384,62 @@ "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", "\n", "assets = dashboard_render[\"assets\"][0]\n", - "#((vmin, vmax),) = dashboard_render[\"rescale\"]\n", - "((vmin, vmax),) = ((0,5),)\n", + "# Use 0-6 range to include EFU (Unknown) category (the same as the last map for tornado tracks)\n", + "(vmin, vmax) = (0,6)\n", "\n", "collection" ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 9, "id": "bdba0ec8-aced-4a16-a5ad-e261aa586cfd", "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=0%2C5'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-104.72280125674247, 27.9971496536041, -71.9717534735214, 46.847529413454325], 'center': [-88.34727736513193, 37.42233953352921, 0]}\n" - ] + "data": { + "text/plain": [ + "{'tilejson': '2.2.0',\n", + " 'version': '1.0.0',\n", + " 'scheme': 'xyz',\n", + " 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&colormap_name=tornado_ef_scale'],\n", + " 'minzoom': 0,\n", + " 'maxzoom': 24,\n", + " 'bounds': [-104.72280125674247,\n", + " 27.9971496536041,\n", + " -71.9717534735214,\n", + " 46.847529413454325],\n", + " 'center': [-88.34727736513193, 37.42233953352921, 0]}" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" } ], "source": [ - "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "#colormap_name = \"tornado_ef_scale\"\n", - "colormap_name = \"turbo\"\n", + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────\n", + "# Use the same tornado_ef_scale colormap for polygons\n", + "colormap_name = \"tornado_ef_scale\"\n", "\n", - "# Build endpoint URL without worrying about trailing slashes\n", + "# Build endpoint URL - NO RESCALE for discrete categorical data\n", "response = requests.get(\n", " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", " f\"&assets={assets}\"\n", - " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", - " f\"&rescale={vmin},{vmax}\",\n", + " f\"&colormap_name={colormap_name}\"\n", + " # Removed rescale completely - let the server use raw integer values\n", ")\n", "\n", "response.raise_for_status()\n", "\n", "tiles = response.json()\n", - "print(tiles)" + "tiles" ] }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 10, "id": "f6183652-36ca-4d4f-af4e-41070e813092", "metadata": {}, "outputs": [ @@ -2405,10 +2465,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_3b937d2da0bb46681d04c94037d1325a {\n", + " #map_488d364622f61b5c64f10bc411f215ea {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 890.0px;\n", + " height: 800.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -2458,116 +2518,154 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_3b937d2da0bb46681d04c94037d1325a" ></div>\n", + " <div class="folium-map" id="map_488d364622f61b5c64f10bc411f215ea" ></div>\n", " \n", " \n", - "<div style="\n", - " position: fixed; \n", - " bottom: 150px; \n", - " left: 1300px; \n", - " width: 120px; \n", - " height: auto; \n", - " background-color: white; \n", - " border:2px solid grey; \n", - " z-index:9999; \n", - " font-size:20px;\n", - " padding: 10px;\n", - " box-shadow: 2px 2px 6px rgba(0,0,0,0.3);\n", - " ">\n", - " <p style="margin: 0 0 10px 0; font-weight: bold; text-align: center;">EF Rating</p>\n", - "\n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #573F5D; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF0</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #62B5F7; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF1</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #74F88E; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF2</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #E9DD61; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF3</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #EE7545; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF4</span>\n", - " </div>\n", - " \n", - " <div style="margin-bottom: 5px; display: flex; align-items: center;">\n", - " <span style="background-color: #FF0000; \n", - " display: inline-block; \n", - " width: 30px; \n", - " height: 15px; \n", - " margin-right: 8px;\n", - " border: 1px solid #666;"></span>\n", - " <span style="font-weight: 600;">EF5</span>\n", + " <div style="\n", + " \n", + " position: fixed; \n", + " top: 50px; \n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " \n", + " width: auto;\n", + " max-width: 90%;\n", + " height: auto; \n", + " background-color: white; \n", + " border: 2px solid grey; \n", + " z-index: 9999; \n", + " font-size: 14px;\n", + " padding: 8px 15px;\n", + " box-shadow: 2px 2px 6px rgba(0,0,0,0.3);\n", + " border-radius: 4px;\n", + " ">\n", + " <p style="margin: 0 0 8px 0; font-weight: bold; text-align: center; font-size: 16px;">EF Rating</p>\n", + " <div style="display: flex; justify-content: center; align-items: center; gap: 15px; flex-wrap: wrap;">\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #add8e6; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF0</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #90ee90; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF1</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #ffe71f; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF2</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #ffa500; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF3</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #ff0000; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF4</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #ff00ff; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EF5</span>\n", + " </div>\n", + " \n", + " <div style="display: flex; align-items: center;">\n", + " <span style="background-color: #b3bcc9; \n", + " display: inline-block; \n", + " width: 25px; \n", + " height: 20px; \n", + " margin-right: 5px;\n", + " border: 1px solid #333;"></span>\n", + " <span style="font-weight: 600;">EFU</span>\n", + " </div>\n", + " \n", + " </div>\n", " </div>\n", " \n", - "</div>\n", "</body>\n", "<script>\n", " \n", " \n", - " var map_3b937d2da0bb46681d04c94037d1325a = L.map(\n", - " "map_3b937d2da0bb46681d04c94037d1325a",\n", + " var map_488d364622f61b5c64f10bc411f215ea = L.map(\n", + " "map_488d364622f61b5c64f10bc411f215ea",\n", " {\n", - " center: [40.3, -84.05],\n", + " center: [40.5, -84.05],\n", " crs: L.CRS.EPSG3857,\n", " ...{\n", - " "zoom": 10.25,\n", + " "zoom": 12,\n", " "zoomControl": true,\n", " "preferCanvas": false,\n", "}\n", "\n", " }\n", " );\n", - " L.control.scale().addTo(map_3b937d2da0bb46681d04c94037d1325a);\n", + " L.control.scale().addTo(map_488d364622f61b5c64f10bc411f215ea);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_3efe0cd1092ad687f1adc7269c2a28b3 = L.tileLayer(\n", - " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", + " var tile_layer_6e188083be906252ac4d767409856767 = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", + " {\n", + " "minZoom": 0,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", + " "noWrap": false,\n", + " "attribution": "Esri",\n", + " "subdomains": "abc",\n", + " "detectRetina": false,\n", + " "tms": false,\n", + " "opacity": 1,\n", + "}\n", + "\n", + " );\n", + " \n", + " \n", + " tile_layer_6e188083be906252ac4d767409856767.addTo(map_488d364622f61b5c64f10bc411f215ea);\n", + " \n", + " \n", + " var tile_layer_2acbdaf1ac300a0d6e39d58232537024 = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", - " "maxZoom": 19,\n", - " "maxNativeZoom": 19,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", " "noWrap": false,\n", - " "attribution": "\\u0026copy; \\u003ca href=\\"https://www.openstreetmap.org/copyright\\"\\u003eOpenStreetMap\\u003c/a\\u003e contributors",\n", + " "attribution": "Esri",\n", " "subdomains": "abc",\n", " "detectRetina": false,\n", " "tms": false,\n", @@ -2577,11 +2675,11 @@ " );\n", " \n", " \n", - " tile_layer_3efe0cd1092ad687f1adc7269c2a28b3.addTo(map_3b937d2da0bb46681d04c94037d1325a);\n", + " tile_layer_2acbdaf1ac300a0d6e39d58232537024.addTo(map_488d364622f61b5c64f10bc411f215ea);\n", " \n", " \n", - " var tile_layer_80ec9fae4562bca06e1593e3450f2a42 = L.tileLayer(\n", - " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C5",\n", + " var tile_layer_05c48367237d68d24a827cfd53268e4b = L.tileLayer(\n", + " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", " "maxZoom": 18,\n", @@ -2597,50 +2695,51 @@ " );\n", " \n", " \n", - " tile_layer_80ec9fae4562bca06e1593e3450f2a42.addTo(map_3b937d2da0bb46681d04c94037d1325a);\n", + " tile_layer_05c48367237d68d24a827cfd53268e4b.addTo(map_488d364622f61b5c64f10bc411f215ea);\n", " \n", " \n", - " var layer_control_58253d02a6fd50f3559826c20ee580b1_layers = {\n", + " var layer_control_85102dbd29e01b679a9c9f54d0194cd5_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_3efe0cd1092ad687f1adc7269c2a28b3,\n", + " "ESRI Satellite" : tile_layer_6e188083be906252ac4d767409856767,\n", " },\n", " overlays : {\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_80ec9fae4562bca06e1593e3450f2a42,\n", + " "Place Labels" : tile_layer_2acbdaf1ac300a0d6e39d58232537024,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_05c48367237d68d24a827cfd53268e4b,\n", " },\n", " };\n", - " let layer_control_58253d02a6fd50f3559826c20ee580b1 = L.control.layers(\n", - " layer_control_58253d02a6fd50f3559826c20ee580b1_layers.base_layers,\n", - " layer_control_58253d02a6fd50f3559826c20ee580b1_layers.overlays,\n", + " let layer_control_85102dbd29e01b679a9c9f54d0194cd5 = L.control.layers(\n", + " layer_control_85102dbd29e01b679a9c9f54d0194cd5_layers.base_layers,\n", + " layer_control_85102dbd29e01b679a9c9f54d0194cd5_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_3b937d2da0bb46681d04c94037d1325a);\n", + " ).addTo(map_488d364622f61b5c64f10bc411f215ea);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 8, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# Use custom colorscale for EF categories\n", - "\n", - "# Create the base map using VEDA STAC\n", + "# Create the base map using the unified function (ef_categories already defined above)\n", + "# NOTE: Not passing rescale for discrete data\n", "m = putils.plot_folium_from_VEDA_STAC(\n", " tiles_url_template=tiles[\"tiles\"][0],\n", - " center_coords=[40.30, -84.05],\n", - " zoom_level=10.25,\n", + " center_coords=[40.50, -84.05],\n", + " zoom_level=12,\n", " rescale=(vmin, vmax),\n", - " colormap_name=colormap_name,\n", + " colormap_name='tornado_ef_scale',\n", + " custom_colors=ef_categories,\n", " capitalize_cmap=False,\n", " layer_name=\"Tornado Tracks [Polygons]\",\n", " date=\"(March-May 2024)\",\n", @@ -2648,61 +2747,11 @@ " attribution=\"VEDA - NWS DAT Tornado Polygons\",\n", " tile_name=\"Tornado Tracks [Polygons] (March-May 2024)\",\n", " opacity=0.8,\n", - " height=\"890px\",\n", + " height=\"800px\",\n", + " remove_default_legend=True, # Only show custom legend\n", + " basemap_style=\"esri-satellite-labels\" # Use ESRI satellite with city/town labels\n", ")\n", "\n", - "# Remove ALL colorbars and color maps\n", - "keys_to_remove = []\n", - "for key in m._children.keys():\n", - " if 'color' in key.lower() or 'legend' in key.lower():\n", - " keys_to_remove.append(key)\n", - "for key in keys_to_remove:\n", - " del m._children[key]\n", - "\n", - "# Create custom legend with specific colors\n", - "legend_html = '''\n", - "{% macro html(this, kwargs) %}\n", - "
\n", - "

EF Rating

\n", - "'''\n", - "\n", - "for cat in ef_categories:\n", - " legend_html += f'''\n", - "
\n", - " \n", - " {cat['label']}\n", - "
\n", - " '''\n", - "\n", - "legend_html += '''\n", - "
\n", - "{% endmacro %}\n", - "'''\n", - "\n", - "# Create a MacroElement to add the legend\n", - "legend = MacroElement()\n", - "legend._template = Template(legend_html)\n", - "\n", - "# Add the legend to the map\n", - "m.get_root().add_child(legend)\n", - "\n", "# Display the map\n", "m" ] @@ -2727,7 +2776,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 11, "id": "d55ccd28-c8ba-47cf-bfd3-03c3a8cd5beb", "metadata": {}, "outputs": [ @@ -3658,15 +3707,13 @@ "" ] }, - "execution_count": 9, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# TODO: Change collection_ID and date\n", - "client_STAC = Client.open(STAC_API_URL)\n", - "\n", "collection_id = \"lakeview-nightlights-tornadoes-2024\"\n", "date = \"2024-03-14\"\n", "\n", @@ -3690,7 +3737,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 12, "id": "6b3f9709-09bc-43ef-b3fd-d89f3c0cd5e9", "metadata": {}, "outputs": [ @@ -3724,7 +3771,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 13, "id": "f283977b-e862-4f2d-9032-414d974a35b4", "metadata": {}, "outputs": [ @@ -3757,10 +3804,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_3c1ae2f5c9bc907d7c106337b643bed8 {\n", + " #map_369e02655300d520cc1cf861b8f54af3 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 890.0px;\n", + " height: 800.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -3811,14 +3858,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_3c1ae2f5c9bc907d7c106337b643bed8" ></div>\n", + " <div class="folium-map" id="map_369e02655300d520cc1cf861b8f54af3" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_3c1ae2f5c9bc907d7c106337b643bed8 = L.map(\n", - " "map_3c1ae2f5c9bc907d7c106337b643bed8",\n", + " var map_369e02655300d520cc1cf861b8f54af3 = L.map(\n", + " "map_369e02655300d520cc1cf861b8f54af3",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -3830,21 +3877,21 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", + " L.control.scale().addTo(map_369e02655300d520cc1cf861b8f54af3);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_f33f2dca22f244b55184b78988eb25f9 = L.tileLayer(\n", - " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", + " var tile_layer_f69d7fcbc0966ba1c010ec5c55b26adb = L.tileLayer(\n", + " "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", - " "maxZoom": 19,\n", - " "maxNativeZoom": 19,\n", + " "maxZoom": 20,\n", + " "maxNativeZoom": 20,\n", " "noWrap": false,\n", - " "attribution": "\\u0026copy; \\u003ca href=\\"https://www.openstreetmap.org/copyright\\"\\u003eOpenStreetMap\\u003c/a\\u003e contributors",\n", - " "subdomains": "abc",\n", + " "attribution": "\\u0026copy; \\u003ca href=\\"https://www.openstreetmap.org/copyright\\"\\u003eOpenStreetMap\\u003c/a\\u003e contributors \\u0026copy; \\u003ca href=\\"https://carto.com/attributions\\"\\u003eCARTO\\u003c/a\\u003e",\n", + " "subdomains": "abcd",\n", " "detectRetina": false,\n", " "tms": false,\n", " "opacity": 1,\n", @@ -3853,10 +3900,10 @@ " );\n", " \n", " \n", - " tile_layer_f33f2dca22f244b55184b78988eb25f9.addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", + " tile_layer_f69d7fcbc0966ba1c010ec5c55b26adb.addTo(map_369e02655300d520cc1cf861b8f54af3);\n", " \n", " \n", - " var tile_layer_7c504be5cd42f50d04e200284b77ca5f = L.tileLayer(\n", + " var tile_layer_a43121b0276bcfcdec0f6c2334e541ae = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", @@ -3873,66 +3920,66 @@ " );\n", " \n", " \n", - " tile_layer_7c504be5cd42f50d04e200284b77ca5f.addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", + " tile_layer_a43121b0276bcfcdec0f6c2334e541ae.addTo(map_369e02655300d520cc1cf861b8f54af3);\n", " \n", " \n", - " var layer_control_c30af4de7b87eda65b6e0aa4676f94eb_layers = {\n", + " var layer_control_1f320463fb3fe3eaf8b9b2b2bfdbb4ea_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_f33f2dca22f244b55184b78988eb25f9,\n", + " "CartoDB Dark" : tile_layer_f69d7fcbc0966ba1c010ec5c55b26adb,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights" : tile_layer_7c504be5cd42f50d04e200284b77ca5f,\n", + " "Black Marble Nightlights" : tile_layer_a43121b0276bcfcdec0f6c2334e541ae,\n", " },\n", " };\n", - " let layer_control_c30af4de7b87eda65b6e0aa4676f94eb = L.control.layers(\n", - " layer_control_c30af4de7b87eda65b6e0aa4676f94eb_layers.base_layers,\n", - " layer_control_c30af4de7b87eda65b6e0aa4676f94eb_layers.overlays,\n", + " let layer_control_1f320463fb3fe3eaf8b9b2b2bfdbb4ea = L.control.layers(\n", + " layer_control_1f320463fb3fe3eaf8b9b2b2bfdbb4ea_layers.base_layers,\n", + " layer_control_1f320463fb3fe3eaf8b9b2b2bfdbb4ea_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", + " ).addTo(map_369e02655300d520cc1cf861b8f54af3);\n", "\n", " \n", " \n", - " var color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae = {};\n", + " var color_map_c2f9969bceee0543fb80733c76e24179 = {};\n", "\n", " \n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color = d3.scale.threshold()\n", + " color_map_c2f9969bceee0543fb80733c76e24179.color = d3.scale.threshold()\n", " .domain([-150.0, -149.3987975951904, -148.79759519038078, -148.19639278557113, -147.59519038076152, -146.9939879759519, -146.3927855711423, -145.79158316633266, -145.19038076152304, -144.58917835671343, -143.98797595190382, -143.38677354709418, -142.78557114228457, -142.18436873747495, -141.58316633266534, -140.9819639278557, -140.3807615230461, -139.77955911823648, -139.17835671342687, -138.57715430861722, -137.9759519038076, -137.374749498998, -136.7735470941884, -136.17234468937875, -135.57114228456913, -134.96993987975952, -134.3687374749499, -133.76753507014027, -133.16633266533066, -132.56513026052104, -131.96392785571143, -131.3627254509018, -130.76152304609218, -130.16032064128257, -129.55911823647295, -128.95791583166334, -128.3567134268537, -127.75551102204409, -127.15430861723448, -126.55310621242485, -125.95190380761522, -125.35070140280561, -124.749498997996, -124.14829659318637, -123.54709418837675, -122.94589178356713, -122.34468937875752, -121.7434869739479, -121.14228456913827, -120.54108216432866, -119.93987975951904, -119.33867735470942, -118.73747494989979, -118.13627254509018, -117.53507014028057, -116.93386773547094, -116.33266533066131, -115.7314629258517, -115.13026052104209, -114.52905811623246, -113.92785571142284, -113.32665330661322, -112.72545090180361, -112.12424849699399, -111.52304609218436, -110.92184368737475, -110.32064128256513, -109.71943887775551, -109.11823647294588, -108.51703406813627, -107.91583166332666, -107.31462925851704, -106.71342685370742, -106.11222444889779, -105.51102204408818, -104.90981963927857, -104.30861723446894, -103.70741482965931, -103.1062124248497, -102.50501002004009, -101.90380761523046, -101.30260521042084, -100.70140280561122, -100.10020040080161, -99.49899799599199, -98.89779559118236, -98.29659318637275, -97.69539078156313, -97.09418837675351, -96.49298597194388, -95.89178356713427, -95.29058116232466, -94.68937875751503, -94.0881763527054, -93.48697394789579, -92.88577154308618, -92.28456913827655, -91.68336673346693, -91.08216432865731, -90.4809619238477, -89.87975951903807, -89.27855711422845, -88.67735470941884, -88.07615230460922, -87.4749498997996, -86.87374749498997, -86.27254509018036, -85.67134268537075, -85.07014028056112, -84.46893787575151, -83.86773547094188, -83.26653306613227, -82.66533066132264, -82.06412825651303, -81.4629258517034, -80.86172344689379, -80.26052104208416, -79.65931863727455, -79.05811623246493, -78.45691382765531, -77.85571142284569, -77.25450901803607, -76.65330661322645, -76.05210420841684, -75.45090180360721, -74.8496993987976, -74.24849699398797, -73.64729458917836, -73.04609218436873, -72.44488977955912, -71.84368737474949, -71.24248496993988, -70.64128256513025, -70.04008016032064, -69.43887775551102, -68.8376753507014, -68.23647294589178, -67.63527054108216, -67.03406813627255, -66.43286573146293, -65.83166332665331, -65.23046092184369, -64.62925851703407, -64.02805611222445, -63.426853707414836, -62.82565130260521, -62.2244488977956, -61.62324649298597, -61.02204408817636, -60.42084168336673, -59.81963927855712, -59.21843687374749, -58.61723446893788, -58.016032064128254, -57.41482965931864, -56.813627254509015, -56.2124248496994, -55.611222444889776, -55.010020040080164, -54.40881763527054, -53.807615230460925, -53.2064128256513, -52.605210420841686, -52.00400801603206, -51.40280561122245, -50.80160320641282, -50.20040080160321, -49.59919839679358, -48.99799599198397, -48.39679358717434, -47.79559118236473, -47.194388777555105, -46.59318637274549, -45.991983967935866, -45.390781563126254, -44.78957915831663, -44.188376753507015, -43.58717434869739, -42.985971943887776, -42.38476953907815, -41.78356713426854, -41.18236472945891, -40.5811623246493, -39.979959919839686, -39.37875751503006, -38.77755511022045, -38.17635270541082, -37.57515030060121, -36.97394789579158, -36.37274549098197, -35.77154308617234, -35.17034068136273, -34.569138276553105, -33.96793587174349, -33.366733466933866, -32.76553106212425, -32.16432865731463, -31.563126252505015, -30.961923847695388, -30.360721442885776, -29.75951903807615, -29.158316633266537, -28.55711422845691, -27.9559118236473, -27.354709418837672, -26.75350701402806, -26.152304609218433, -25.55110220440882, -24.949899799599194, -24.348697394789582, -23.747494989979955, -23.146292585170343, -22.545090180360717, -21.943887775551104, -21.342685370741492, -20.74148296593185, -20.14028056112224, -19.539078156312627, -18.937875751503014, -18.336673346693374, -17.73547094188376, -17.13426853707415, -16.533066132264537, -15.931863727454896, -15.330661322645284, -14.729458917835672, -14.12825651302606, -13.527054108216447, -12.925851703406806, -12.324649298597194, -11.723446893787582, -11.12224448897797, -10.521042084168329, -9.919839679358716, -9.318637274549104, -8.717434869739492, -8.116232464929851, -7.515030060120239, -6.913827655310627, -6.312625250501014, -5.711422845691374, -5.110220440881761, -4.509018036072149, -3.9078156312625367, -3.306613226452896, -2.7054108216432837, -2.1042084168336714, -1.5030060120240591, -0.9018036072144184, -0.30060120240480614, 0.30060120240480614, 0.9018036072144184, 1.5030060120240591, 2.1042084168336714, 2.7054108216432837, 3.306613226452896, 3.9078156312625367, 4.509018036072149, 5.110220440881761, 5.711422845691374, 6.312625250501014, 6.913827655310627, 7.515030060120239, 8.116232464929851, 8.717434869739492, 9.318637274549104, 9.919839679358716, 10.521042084168329, 11.12224448897797, 11.723446893787582, 12.324649298597194, 12.925851703406806, 13.527054108216447, 14.12825651302606, 14.729458917835672, 15.330661322645284, 15.931863727454896, 16.533066132264537, 17.13426853707415, 17.73547094188376, 18.336673346693374, 18.937875751503014, 19.539078156312627, 20.14028056112224, 20.74148296593185, 21.342685370741492, 21.943887775551104, 22.545090180360717, 23.14629258517033, 23.74749498997997, 24.348697394789582, 24.949899799599194, 25.551102204408807, 26.152304609218447, 26.75350701402806, 27.354709418837672, 27.955911823647284, 28.557114228456925, 29.158316633266537, 29.75951903807615, 30.36072144288576, 30.961923847695402, 31.563126252505015, 32.16432865731463, 32.76553106212424, 33.36673346693388, 33.96793587174349, 34.569138276553105, 35.17034068136272, 35.77154308617236, 36.37274549098197, 36.97394789579158, 37.575150300601194, 38.176352705410835, 38.77755511022045, 39.37875751503006, 39.97995991983967, 40.58116232464931, 41.182364729458925, 41.78356713426854, 42.38476953907815, 42.98597194388776, 43.5871743486974, 44.188376753507015, 44.78957915831663, 45.39078156312624, 45.99198396793588, 46.59318637274549, 47.194388777555105, 47.79559118236472, 48.39679358717436, 48.99799599198397, 49.59919839679358, 50.200400801603195, 50.801603206412835, 51.40280561122245, 52.00400801603206, 52.60521042084167, 53.20641282565131, 53.807615230460925, 54.40881763527054, 55.01002004008015, 55.61122244488979, 56.2124248496994, 56.813627254509015, 57.41482965931863, 58.01603206412827, 58.61723446893788, 59.21843687374749, 59.819639278557105, 60.420841683366746, 61.02204408817636, 61.62324649298597, 62.22444889779558, 62.82565130260522, 63.426853707414836, 64.02805611222445, 64.62925851703406, 65.2304609218437, 65.83166332665331, 66.43286573146293, 67.03406813627254, 67.63527054108218, 68.23647294589179, 68.8376753507014, 69.43887775551102, 70.04008016032063, 70.64128256513027, 71.24248496993988, 71.84368737474949, 72.4448897795591, 73.04609218436875, 73.64729458917836, 74.24849699398797, 74.84969939879758, 75.45090180360722, 76.05210420841684, 76.65330661322645, 77.25450901803606, 77.8557114228457, 78.45691382765531, 79.05811623246493, 79.65931863727454, 80.26052104208418, 80.86172344689379, 81.4629258517034, 82.06412825651302, 82.66533066132266, 83.26653306613227, 83.86773547094188, 84.4689378757515, 85.07014028056113, 85.67134268537075, 86.27254509018036, 86.87374749498997, 87.47494989979961, 88.07615230460922, 88.67735470941884, 89.27855711422845, 89.87975951903809, 90.4809619238477, 91.08216432865731, 91.68336673346693, 92.28456913827657, 92.88577154308618, 93.48697394789579, 94.0881763527054, 94.68937875751504, 95.29058116232466, 95.89178356713427, 96.49298597194388, 97.0941883767535, 97.69539078156313, 98.29659318637275, 98.89779559118236, 99.49899799599197, 100.10020040080161, 100.70140280561122, 101.30260521042084, 101.90380761523045, 102.50501002004009, 103.1062124248497, 103.70741482965931, 104.30861723446893, 104.90981963927857, 105.51102204408818, 106.11222444889779, 106.7134268537074, 107.31462925851702, 107.91583166332663, 108.5170340681363, 109.11823647294591, 109.71943887775552, 110.32064128256513, 110.92184368737475, 111.52304609218436, 112.12424849699397, 112.72545090180358, 113.32665330661325, 113.92785571142286, 114.52905811623248, 115.13026052104209, 115.7314629258517, 116.33266533066131, 116.93386773547093, 117.53507014028054, 118.13627254509021, 118.73747494989982, 119.33867735470943, 119.93987975951904, 120.54108216432866, 121.14228456913827, 121.74348697394788, 122.3446893787575, 122.9458917835671, 123.54709418837678, 124.14829659318639, 124.749498997996, 125.35070140280561, 125.95190380761522, 126.55310621242484, 127.15430861723445, 127.75551102204406, 128.35671342685373, 128.95791583166334, 129.55911823647295, 130.16032064128257, 130.76152304609218, 131.3627254509018, 131.9639278557114, 132.56513026052102, 133.16633266533069, 133.7675350701403, 134.3687374749499, 134.96993987975952, 135.57114228456913, 136.17234468937875, 136.77354709418836, 137.37474949899797, 137.97595190380764, 138.57715430861725, 139.17835671342687, 139.77955911823648, 140.3807615230461, 140.9819639278557, 141.58316633266531, 142.18436873747493, 142.7855711422846, 143.3867735470942, 143.98797595190382, 144.58917835671343, 145.19038076152304, 145.79158316633266, 146.39278557114227, 146.99398797595188, 147.59519038076155, 148.19639278557116, 148.79759519038078, 149.3987975951904, 150.0])\n", " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", " \n", "\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x = d3.scale.linear()\n", + " color_map_c2f9969bceee0543fb80733c76e24179.x = d3.scale.linear()\n", " .domain([-150.0, 150.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.legend = L.control({position: 'topright'});\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.legend.addTo(map_3c1ae2f5c9bc907d7c106337b643bed8);\n", + " color_map_c2f9969bceee0543fb80733c76e24179.legend = L.control({position: 'topright'});\n", + " color_map_c2f9969bceee0543fb80733c76e24179.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_c2f9969bceee0543fb80733c76e24179.legend.addTo(map_369e02655300d520cc1cf861b8f54af3);\n", "\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.xAxis = d3.svg.axis()\n", - " .scale(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x)\n", + " color_map_c2f9969bceee0543fb80733c76e24179.xAxis = d3.svg.axis()\n", + " .scale(color_map_c2f9969bceee0543fb80733c76e24179.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([-150.0, '', -90.0, '', -30.0, '', 30.0, '', 90.0, '', 150.0, '']);\n", "\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_c2f9969bceee0543fb80733c76e24179.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.g = color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.svg.append("g")\n", + " color_map_c2f9969bceee0543fb80733c76e24179.g = color_map_c2f9969bceee0543fb80733c76e24179.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.g.selectAll("rect")\n", - " .data(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color.range().map(function(d, i) {\n", + " color_map_c2f9969bceee0543fb80733c76e24179.g.selectAll("rect")\n", + " .data(color_map_c2f9969bceee0543fb80733c76e24179.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color.domain()[i - 1]) : color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x.range()[0],\n", - " x1: i < color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color.domain().length ? color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.color.domain()[i]) : color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.x.range()[1],\n", + " x0: i ? color_map_c2f9969bceee0543fb80733c76e24179.x(color_map_c2f9969bceee0543fb80733c76e24179.color.domain()[i - 1]) : color_map_c2f9969bceee0543fb80733c76e24179.x.range()[0],\n", + " x1: i < color_map_c2f9969bceee0543fb80733c76e24179.color.domain().length ? color_map_c2f9969bceee0543fb80733c76e24179.x(color_map_c2f9969bceee0543fb80733c76e24179.color.domain()[i]) : color_map_c2f9969bceee0543fb80733c76e24179.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -3942,7 +3989,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.g.call(color_map_c2ebe3e9e3f07c9fe10d97e9dc6da4ae.xAxis).append("text")\n", + " color_map_c2f9969bceee0543fb80733c76e24179.g.call(color_map_c2f9969bceee0543fb80733c76e24179.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -3951,10 +3998,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 11, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } @@ -3974,7 +4021,8 @@ " attribution=\"VEDA Black Marble Nightlights\",\n", " tile_name=\"Black Marble Nightlights\",\n", " opacity=0.8,\n", - " height=\"890px\",\n", + " height=\"800px\",\n", + " basemap_style=\"cartodb-dark\" # Use dark basemap for better nightlight visibility\n", ")\n", "\n", "print(\n", @@ -3989,9 +4037,9 @@ "id": "77daa626-6096-41e3-b2cb-4398e1fe647f", "metadata": {}, "source": [ - "# Example: DOW7 Base Reflectivity (Radar)\n", + "# Example: DOW7 Base Reflectivity and Velocity (Radar)\n", "\n", - "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize\n" + "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize using a side-by-side layer slider\n" ] }, { @@ -4005,9 +4053,69 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 14, "id": "7213b9f2-8444-462b-a994-3e8cbb6beed2", "metadata": {}, + "outputs": [], + "source": [ + "# Retrieve both DOW7 reflectivity and velocity data from VEDA STAC\n", + "\n", + "date = \"2024-04-26\" #Use the same date for both reflectivity and velocity\n", + "\n", + "# ── DOW7 Base Reflectivity ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "# Get reflectivity collection and tiles\n", + "collection_id_refl = \"tornadoes-2024-dow-refl-harlan\"\n", + "results_refl = client_STAC.search(collections=[collection_id_refl], datetime=date)\n", + "items_refl = list(results_refl.items())\n", + "item_refl = items_refl[0]\n", + "collection_refl = item_refl.get_collection()\n", + "dashboard_render_refl = collection_refl.extra_fields[\"renders\"][\"dashboard\"]\n", + "assets_refl = dashboard_render_refl[\"assets\"][0]\n", + "((vmin_refl, vmax_refl),) = dashboard_render_refl[\"rescale\"]\n", + "colormap_name = collection_refl.extra_fields['renders']['dashboard']['colormap_name']\n", + "\n", + "# Build reflectivity tile URL\n", + "response_refl = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id_refl}\"\n", + " f\"/items/{item_refl.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets_refl}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin_refl},{vmax_refl}\",\n", + ")\n", + "response_refl.raise_for_status()\n", + "tiles_refl = response_refl.json()\n", + "\n", + "# ── DOW7 Velocity ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "# Get velocity collection and tiles\n", + "collection_id_vel = \"tornadoes-2024-dow-v-harlan\"\n", + "results_vel = client_STAC.search(collections=[collection_id_vel], datetime=date)\n", + "items_vel = list(results_vel.items())\n", + "item_vel = items_vel[0]\n", + "collection_vel = item_vel.get_collection()\n", + "dashboard_render_vel = collection_vel.extra_fields[\"renders\"][\"dashboard\"]\n", + "assets_vel = dashboard_render_vel[\"assets\"][0]\n", + "((vmin_vel, vmax_vel),) = dashboard_render_vel[\"rescale\"]\n", + "colormap_name = collection_vel.extra_fields['renders']['dashboard']['colormap_name']\n", + "\n", + "# Build velocity tile URL\n", + "response_vel = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id_vel}\"\n", + " f\"/items/{item_vel.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets_vel}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin_vel},{vmax_vel}\",\n", + ")\n", + "response_vel.raise_for_status()\n", + "tiles_vel = response_vel.json()" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "22a738e8", + "metadata": {}, "outputs": [ { "data": { @@ -4927,345 +5035,20 @@ "" ] }, - "execution_count": 12, + "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# TODO: Change collection_ID and date\n", - "client_STAC = Client.open(STAC_API_URL)\n", - "\n", - "collection_id = \"tornadoes-2024-dow-refl-harlan\"\n", - "date = \"2024-04-26\"\n", - "\n", - "results = client_STAC.search(collections=[collection_id], datetime=date)\n", - "\n", - "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "\n", - "items = list(results.items())\n", - "assert len(items) != 0, \"No items found\"\n", - "item = items[0]\n", - "collection = item.get_collection()\n", - "\n", - "# grab the dashboard render block\n", - "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", - "\n", - "assets = dashboard_render[\"assets\"][0]\n", - "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", - "\n", - "collection" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "id": "3c3067b1-f38d-4c3d-8c94-06e8922c3746", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=-10%2C50'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-95.42, 41.62, -95.3, 41.72], 'center': [-95.36, 41.67, 0]}\n" - ] - } - ], - "source": [ - "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "colormap_name = \"turbo\"\n", - "\n", - "# Build endpoint URL without worrying about trailing slashes\n", - "response = requests.get(\n", - " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", - " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", - " f\"&assets={assets}\"\n", - " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", - " f\"&rescale={vmin},{vmax}\",\n", - ")\n", - "\n", - "response.raise_for_status()\n", - "\n", - "tiles = response.json()\n", - "print(tiles)" + "#View DOW7 reflectivity collection\n", + "collection_refl" ] }, { "cell_type": "code", - "execution_count": 14, - "id": "a0767a4a-ef94-4109-a1fc-a74f1dae7765", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "DOW-collected reflectivity values from the Minden-Harlan, Iowa EF-3 tornado on April 26, 2024 as it passed northwest of Harlan.\n" - ] - }, - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 14, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Use the new plot_folium_from_VEDA_STAC function\n", - "m = putils.plot_folium_from_VEDA_STAC(\n", - " tiles_url_template=tiles[\"tiles\"][0],\n", - " center_coords=[41.668, -95.372],\n", - " zoom_level=14,\n", - " rescale=(vmin, vmax),\n", - " colormap_name=colormap_name,\n", - " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", - " layer_name=\"DOW7 Reflectivity (Harlan, IA)\",\n", - " date=f\"{date}T00:00:00Z\",\n", - " colorbar_caption=\"dBZ\",\n", - " attribution=\"DOW7 Reflectivity (Harlan, IA)\",\n", - " tile_name=\"DOW7 Reflectivity (Harlan, IA)\",\n", - " opacity=0.8,\n", - " height=\"890px\",\n", - ")\n", - "\n", - "print(\n", - " \"DOW-collected reflectivity values from the Minden-Harlan, Iowa EF-3 tornado on April 26, 2024 as it passed northwest of Harlan.\"\n", - ")\n", - "# Display the map\n", - "m" - ] - }, - { - "cell_type": "markdown", - "id": "1004044a-bdfb-4f18-8438-8367cec7ec40", - "metadata": {}, - "source": [ - "# Example: DOW7 Velocity (Radar)\n", - "\n", - "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize\n" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "id": "50d9d4a0-3eb7-4382-936b-0cc7fd29e27c", + "execution_count": 16, + "id": "618ba9da", "metadata": {}, "outputs": [ { @@ -6186,80 +5969,29 @@ "" ] }, - "execution_count": 15, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# TODO: Change collection_ID and date\n", - "client_STAC = Client.open(STAC_API_URL)\n", - "\n", - "collection_id = \"tornadoes-2024-dow-v-harlan\"\n", - "date = \"2024-04-26\"\n", - "\n", - "results = client_STAC.search(collections=[collection_id], datetime=date)\n", - "\n", - "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "\n", - "items = list(results.items())\n", - "assert len(items) != 0, \"No items found\"\n", - "item = items[0]\n", - "collection = item.get_collection()\n", - "\n", - "# grab the dashboard render block\n", - "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", - "\n", - "assets = dashboard_render[\"assets\"][0]\n", - "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", - "\n", - "collection" + "#View DOW7 velocity collection\n", + "collection_vel" ] }, { "cell_type": "code", - "execution_count": 16, - "id": "61251d1a-f1d0-4daa-9aef-9c6c3aed41e2", + "execution_count": 25, + "id": "f01b3d85", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=bwr&rescale=-75%2C75'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-95.42, 41.62, -95.3, 41.72], 'center': [-95.36, 41.67, 0]}\n" - ] - } - ], - "source": [ - "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "colormap_name = \"bwr\"\n", - "\n", - "# Build endpoint URL without worrying about trailing slashes\n", - "response = requests.get(\n", - " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", - " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", - " f\"&assets={assets}\"\n", - " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", - " f\"&rescale={vmin},{vmax}\",\n", - ")\n", - "\n", - "response.raise_for_status()\n", - "\n", - "tiles = response.json()\n", - "print(tiles)" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "id": "45cb9b07-0f5f-4297-891b-aa378f51fe76", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "DOW-collected velocity values from the Minden-Harlan, Iowa EF-3 tornado on April 26, 2024 as it passed northwest of Harlan.\n" + "Interactive side-by-side comparison of DOW7 reflectivity and velocity data.\n", + "Drag the vertical slider to reveal more of either dataset.\n", + "\n" ] }, { @@ -6284,10 +6016,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_56fa48c3258831963448f1940c23f288 {\n", + " #map_d33b51f0745b7231a8422afa90b39984 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 890.0px;\n", + " height: 800.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -6317,35 +6049,86 @@ " </script>\n", "\n", " \n", - " <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js"></script>\n", + " <script src="https://cdn.jsdelivr.net/gh/digidem/leaflet-side-by-side@2.0.0/leaflet-side-by-side.min.js"></script>\n", "</head>\n", "<body>\n", " \n", " \n", - " <div style="\n", - " position: fixed;\n", - " top: 10px;\n", - " left: 50%;\n", - " transform: translateX(-50%);\n", - " z-index: 1000;\n", - " font-size: 18px;\n", - " font-weight: bold;\n", - " background: rgba(255,255,255,0.8);\n", - " padding: 4px 8px;\n", - " border-radius: 4px;\n", - " ">\n", - " DOW7 Velocity (Harlan, IA) β€” April 26, 2024\n", - " </div>\n", - " \n", + " <div style="\n", + " position: fixed;\n", + " top: 10px;\n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " font-size: 18px;\n", + " font-weight: bold;\n", + " background: rgba(255,255,255,0.9);\n", + " padding: 8px 12px;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " ">\n", + " DOW7 Comparison β€” Harlan, IA β€” April 26, 2024\n", + " </div>\n", " \n", - " <div class="folium-map" id="map_56fa48c3258831963448f1940c23f288" ></div>\n", + " \n", + " <div style="\n", + " position: fixed;\n", + " top: 60px;\n", + " left: 25%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " font-size: 14px;\n", + " font-weight: bold;\n", + " background: rgba(255,255,255,0.9);\n", + " padding: 5px 10px;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " ">\n", + " ← Reflectivity (-10 to 50 dBZ)\n", + " </div>\n", + " <div style="\n", + " position: fixed;\n", + " top: 60px;\n", + " right: 25%;\n", + " transform: translateX(50%);\n", + " z-index: 1000;\n", + " font-size: 14px;\n", + " font-weight: bold;\n", + " background: rgba(255,255,255,0.9);\n", + " padding: 5px 10px;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " ">\n", + " Velocity (-75 to 75 m/s) β†’\n", + " </div>\n", + " \n", + " \n", + " <div style="\n", + " position: fixed;\n", + " bottom: 30px;\n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " font-size: 13px;\n", + " background: rgba(255,255,255,0.9);\n", + " padding: 8px 12px;\n", + " border-radius: 4px;\n", + " max-width: 600px;\n", + " text-align: center;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " ">\n", + " Drag the slider to compare rendered tiles. \n", + " </div>\n", + " \n", + " \n", + " <div class="folium-map" id="map_d33b51f0745b7231a8422afa90b39984" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_56fa48c3258831963448f1940c23f288 = L.map(\n", - " "map_56fa48c3258831963448f1940c23f288",\n", + " var map_d33b51f0745b7231a8422afa90b39984 = L.map(\n", + " "map_d33b51f0745b7231a8422afa90b39984",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6357,20 +6140,40 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_56fa48c3258831963448f1940c23f288);\n", + " L.control.scale().addTo(map_d33b51f0745b7231a8422afa90b39984);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_96c4f9afe9e7b40aede14087719ea5fd = L.tileLayer(\n", - " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", + " var tile_layer_cdfb1979dfd6390a5c71f07ed7a20ab1 = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", - " "maxZoom": 19,\n", - " "maxNativeZoom": 19,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", + " "noWrap": false,\n", + " "attribution": "Esri",\n", + " "subdomains": "abc",\n", + " "detectRetina": false,\n", + " "tms": false,\n", + " "opacity": 1,\n", + "}\n", + "\n", + " );\n", + " \n", + " \n", + " tile_layer_cdfb1979dfd6390a5c71f07ed7a20ab1.addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " \n", + " \n", + " var tile_layer_3c04130e0f8a11c4f9242077d0bd2593 = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", + " {\n", + " "minZoom": 0,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", " "noWrap": false,\n", - " "attribution": "\\u0026copy; \\u003ca href=\\"https://www.openstreetmap.org/copyright\\"\\u003eOpenStreetMap\\u003c/a\\u003e contributors",\n", + " "attribution": "Esri",\n", " "subdomains": "abc",\n", " "detectRetina": false,\n", " "tms": false,\n", @@ -6380,17 +6183,37 @@ " );\n", " \n", " \n", - " tile_layer_96c4f9afe9e7b40aede14087719ea5fd.addTo(map_56fa48c3258831963448f1940c23f288);\n", + " tile_layer_3c04130e0f8a11c4f9242077d0bd2593.addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " \n", + " \n", + " var tile_layer_842020ae7f87326b7b017432e2482cc3 = L.tileLayer(\n", + " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", + " {\n", + " "minZoom": 0,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", + " "noWrap": false,\n", + " "attribution": "DOW7 Reflectivity",\n", + " "subdomains": "abc",\n", + " "detectRetina": false,\n", + " "tms": false,\n", + " "opacity": 0.8,\n", + "}\n", + "\n", + " );\n", + " \n", + " \n", + " tile_layer_842020ae7f87326b7b017432e2482cc3.addTo(map_d33b51f0745b7231a8422afa90b39984);\n", " \n", " \n", - " var tile_layer_79529df171b7b400bc45bf35c67bd25e = L.tileLayer(\n", - " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-75%2C75",\n", + " var tile_layer_c4cfc569f335c98cbdcbeceee23ba93d = L.tileLayer(\n", + " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", " "maxZoom": 18,\n", " "maxNativeZoom": 18,\n", " "noWrap": false,\n", - " "attribution": "DOW7 Velocity (Harlan, IA)",\n", + " "attribution": "DOW7 Velocity",\n", " "subdomains": "abc",\n", " "detectRetina": false,\n", " "tms": false,\n", @@ -6400,113 +6223,69 @@ " );\n", " \n", " \n", - " tile_layer_79529df171b7b400bc45bf35c67bd25e.addTo(map_56fa48c3258831963448f1940c23f288);\n", + " tile_layer_c4cfc569f335c98cbdcbeceee23ba93d.addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " \n", + " \n", + " var side_by_side_layers_4ec07f82a51f19e06582016cd48d4260 = L.control.sideBySide(\n", + " tile_layer_842020ae7f87326b7b017432e2482cc3, tile_layer_c4cfc569f335c98cbdcbeceee23ba93d\n", + " ).addTo(map_d33b51f0745b7231a8422afa90b39984);\n", " \n", " \n", - " var layer_control_3ddf6e63b9b71690b238baa5466d7bcf_layers = {\n", + " var layer_control_4cb3ab9344a54e4791385e2e7add6f23_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_96c4f9afe9e7b40aede14087719ea5fd,\n", + " "ESRI Satellite" : tile_layer_cdfb1979dfd6390a5c71f07ed7a20ab1,\n", " },\n", " overlays : {\n", - " "DOW7 Velocity (Harlan, IA)" : tile_layer_79529df171b7b400bc45bf35c67bd25e,\n", + " "Place Labels" : tile_layer_3c04130e0f8a11c4f9242077d0bd2593,\n", + " "DOW7 Reflectivity" : tile_layer_842020ae7f87326b7b017432e2482cc3,\n", + " "DOW7 Velocity" : tile_layer_c4cfc569f335c98cbdcbeceee23ba93d,\n", " },\n", " };\n", - " let layer_control_3ddf6e63b9b71690b238baa5466d7bcf = L.control.layers(\n", - " layer_control_3ddf6e63b9b71690b238baa5466d7bcf_layers.base_layers,\n", - " layer_control_3ddf6e63b9b71690b238baa5466d7bcf_layers.overlays,\n", + " let layer_control_4cb3ab9344a54e4791385e2e7add6f23 = L.control.layers(\n", + " layer_control_4cb3ab9344a54e4791385e2e7add6f23_layers.base_layers,\n", + " layer_control_4cb3ab9344a54e4791385e2e7add6f23_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_56fa48c3258831963448f1940c23f288);\n", + " ).addTo(map_d33b51f0745b7231a8422afa90b39984);\n", "\n", " \n", - " \n", - " var color_map_98b95bf96ec17767eb68199eee93b512 = {};\n", - "\n", - " \n", - " color_map_98b95bf96ec17767eb68199eee93b512.color = d3.scale.threshold()\n", - " .domain([-75.0, -74.6993987975952, -74.39879759519039, -74.09819639278557, -73.79759519038076, -73.49699398797596, -73.19639278557115, -72.89579158316633, -72.59519038076152, -72.29458917835672, -71.99398797595191, -71.69338677354709, -71.39278557114228, -71.09218436873748, -70.79158316633267, -70.49098196392785, -70.19038076152304, -69.88977955911824, -69.58917835671343, -69.28857715430861, -68.9879759519038, -68.687374749499, -68.3867735470942, -68.08617234468937, -67.78557114228457, -67.48496993987976, -67.18436873747495, -66.88376753507013, -66.58316633266533, -66.28256513026052, -65.98196392785572, -65.6813627254509, -65.38076152304609, -65.08016032064128, -64.77955911823648, -64.47895791583167, -64.17835671342685, -63.877755511022045, -63.57715430861724, -63.276553106212425, -62.97595190380761, -62.675350701402806, -62.374749498998, -62.07414829659319, -61.77354709418837, -61.47294589178357, -61.17234468937876, -60.87174348697395, -60.571142284569135, -60.27054108216433, -59.96993987975952, -59.66933867735471, -59.368737474949896, -59.06813627254509, -58.76753507014028, -58.46693386773547, -58.16633266533066, -57.86573146292585, -57.565130260521045, -57.26452905811623, -56.96392785571142, -56.66332665330661, -56.362725450901806, -56.06212424849699, -55.76152304609218, -55.46092184368737, -55.16032064128257, -54.859719438877754, -54.55911823647294, -54.258517034068134, -53.95791583166333, -53.65731462925852, -53.35671342685371, -53.056112224448896, -52.75551102204409, -52.45490981963928, -52.15430861723447, -51.85370741482966, -51.55310621242485, -51.252505010020045, -50.95190380761523, -50.65130260521042, -50.35070140280561, -50.050100200400806, -49.74949899799599, -49.44889779559118, -49.14829659318637, -48.84769539078157, -48.547094188376754, -48.24649298597194, -47.945891783567134, -47.64529058116233, -47.344689378757515, -47.0440881763527, -46.743486973947896, -46.44288577154309, -46.142284569138276, -45.84168336673346, -45.54108216432866, -45.24048096192385, -44.93987975951904, -44.639278557114224, -44.33867735470942, -44.03807615230461, -43.7374749498998, -43.436873747494985, -43.13627254509018, -42.83567134268537, -42.53507014028056, -42.234468937875754, -41.93386773547094, -41.633266533066134, -41.33266533066132, -41.032064128256515, -40.7314629258517, -40.430861723446895, -40.13026052104208, -39.829659318637276, -39.52905811623246, -39.22845691382766, -38.92785571142284, -38.62725450901804, -38.326653306613224, -38.02605210420842, -37.725450901803605, -37.4248496993988, -37.124248496993985, -36.82364729458918, -36.523046092184366, -36.22244488977956, -35.921843687374746, -35.62124248496994, -35.32064128256513, -35.02004008016032, -34.71943887775551, -34.4188376753507, -34.11823647294589, -33.81763527054108, -33.517034068136276, -33.21643286573146, -32.91583166332666, -32.61523046092184, -32.31462925851704, -32.014028056112224, -31.713426853707418, -31.412825651302605, -31.1122244488978, -30.811623246492985, -30.51102204408818, -30.210420841683366, -29.90981963927856, -29.609218436873746, -29.30861723446894, -29.008016032064127, -28.70741482965932, -28.406813627254508, -28.1062124248497, -27.805611222444888, -27.505010020040082, -27.20440881763527, -26.903807615230463, -26.60320641282565, -26.302605210420843, -26.00200400801603, -25.701402805611224, -25.40080160320641, -25.100200400801604, -24.79959919839679, -24.498997995991985, -24.19839679358717, -23.897795591182366, -23.597194388777552, -23.296593186372746, -22.995991983967933, -22.695390781563127, -22.394789579158314, -22.094188376753507, -21.793587174348694, -21.492985971943888, -21.192384769539075, -20.89178356713427, -20.591182364729455, -20.29058116232465, -19.989979959919843, -19.68937875751503, -19.388777555110224, -19.08817635270541, -18.787575150300604, -18.48697394789579, -18.186372745490985, -17.88577154308617, -17.585170340681366, -17.284569138276552, -16.983967935871746, -16.683366733466933, -16.382765531062127, -16.082164328657313, -15.781563126252507, -15.480961923847694, -15.180360721442888, -14.879759519038075, -14.579158316633269, -14.278557114228455, -13.97795591182365, -13.677354709418836, -13.37675350701403, -13.076152304609217, -12.77555110220441, -12.474949899799597, -12.174348697394791, -11.873747494989978, -11.573146292585172, -11.272545090180358, -10.971943887775552, -10.671342685370746, -10.370741482965926, -10.07014028056112, -9.769539078156313, -9.468937875751507, -9.168336673346687, -8.86773547094188, -8.567134268537075, -8.266533066132268, -7.965931863727448, -7.665330661322642, -7.364729458917836, -7.06412825651303, -6.7635270541082235, -6.462925851703403, -6.162324649298597, -5.861723446893791, -5.561122244488985, -5.260521042084164, -4.959919839679358, -4.659318637274552, -4.358717434869746, -4.058116232464926, -3.7575150300601194, -3.4569138276553133, -3.156312625250507, -2.855711422845687, -2.5551102204408807, -2.2545090180360745, -1.9539078156312684, -1.653306613226448, -1.3527054108216419, -1.0521042084168357, -0.7515030060120296, -0.4509018036072092, -0.15030060120240307, 0.15030060120240307, 0.4509018036072092, 0.7515030060120296, 1.0521042084168357, 1.3527054108216419, 1.653306613226448, 1.9539078156312684, 2.2545090180360745, 2.5551102204408807, 2.855711422845687, 3.156312625250507, 3.4569138276553133, 3.7575150300601194, 4.058116232464926, 4.358717434869746, 4.659318637274552, 4.959919839679358, 5.260521042084164, 5.561122244488985, 5.861723446893791, 6.162324649298597, 6.462925851703403, 6.7635270541082235, 7.06412825651303, 7.364729458917836, 7.665330661322642, 7.965931863727448, 8.266533066132268, 8.567134268537075, 8.86773547094188, 9.168336673346687, 9.468937875751507, 9.769539078156313, 10.07014028056112, 10.370741482965926, 10.671342685370746, 10.971943887775552, 11.272545090180358, 11.573146292585164, 11.873747494989985, 12.174348697394791, 12.474949899799597, 12.775551102204403, 13.076152304609224, 13.37675350701403, 13.677354709418836, 13.977955911823642, 14.278557114228462, 14.579158316633269, 14.879759519038075, 15.18036072144288, 15.480961923847701, 15.781563126252507, 16.082164328657313, 16.38276553106212, 16.68336673346694, 16.983967935871746, 17.284569138276552, 17.58517034068136, 17.88577154308618, 18.186372745490985, 18.48697394789579, 18.787575150300597, 19.088176352705418, 19.388777555110224, 19.68937875751503, 19.989979959919836, 20.290581162324656, 20.591182364729463, 20.89178356713427, 21.192384769539075, 21.49298597194388, 21.7935871743487, 22.094188376753507, 22.394789579158314, 22.69539078156312, 22.99599198396794, 23.296593186372746, 23.597194388777552, 23.89779559118236, 24.19839679358718, 24.498997995991985, 24.79959919839679, 25.100200400801597, 25.400801603206418, 25.701402805611224, 26.00200400801603, 26.302605210420836, 26.603206412825656, 26.903807615230463, 27.20440881763527, 27.505010020040075, 27.805611222444895, 28.1062124248497, 28.406813627254508, 28.707414829659314, 29.008016032064134, 29.30861723446894, 29.609218436873746, 29.909819639278552, 30.210420841683373, 30.51102204408818, 30.811623246492985, 31.11222444889779, 31.41282565130261, 31.713426853707418, 32.014028056112224, 32.31462925851703, 32.61523046092185, 32.91583166332666, 33.21643286573146, 33.51703406813627, 33.81763527054109, 34.118236472945895, 34.4188376753507, 34.71943887775551, 35.020040080160314, 35.320641282565134, 35.62124248496994, 35.921843687374746, 36.22244488977955, 36.52304609218437, 36.82364729458918, 37.124248496993985, 37.42484969939879, 37.72545090180361, 38.02605210420842, 38.326653306613224, 38.62725450901803, 38.92785571142285, 39.22845691382766, 39.52905811623246, 39.82965931863727, 40.13026052104209, 40.430861723446895, 40.7314629258517, 41.03206412825651, 41.33266533066133, 41.633266533066134, 41.93386773547094, 42.23446893787575, 42.53507014028057, 42.83567134268537, 43.13627254509018, 43.436873747494985, 43.737474949899806, 44.03807615230461, 44.33867735470942, 44.639278557114224, 44.939879759519044, 45.24048096192385, 45.54108216432866, 45.84168336673346, 46.14228456913828, 46.44288577154309, 46.743486973947896, 47.0440881763527, 47.34468937875752, 47.64529058116233, 47.945891783567134, 48.24649298597194, 48.54709418837675, 48.84769539078157, 49.14829659318637, 49.44889779559118, 49.749498997995985, 50.050100200400806, 50.35070140280561, 50.65130260521042, 50.951903807615224, 51.252505010020045, 51.55310621242485, 51.85370741482966, 52.15430861723446, 52.45490981963928, 52.75551102204409, 53.056112224448896, 53.3567134268537, 53.65731462925851, 53.957915831663314, 54.25851703406815, 54.559118236472955, 54.85971943887776, 55.16032064128257, 55.46092184368737, 55.76152304609218, 56.062124248496986, 56.36272545090179, 56.663326653306626, 56.96392785571143, 57.26452905811624, 57.565130260521045, 57.86573146292585, 58.16633266533066, 58.46693386773546, 58.76753507014027, 59.068136272545104, 59.36873747494991, 59.669338677354716, 59.96993987975952, 60.27054108216433, 60.571142284569135, 60.87174348697394, 61.17234468937875, 61.47294589178355, 61.77354709418839, 62.074148296593194, 62.374749498998, 62.675350701402806, 62.97595190380761, 63.27655310621242, 63.577154308617224, 63.87775551102203, 64.17835671342687, 64.47895791583167, 64.77955911823648, 65.08016032064128, 65.38076152304609, 65.6813627254509, 65.9819639278557, 66.28256513026051, 66.58316633266534, 66.88376753507015, 67.18436873747495, 67.48496993987976, 67.78557114228457, 68.08617234468937, 68.38677354709418, 68.68737474949899, 68.98797595190382, 69.28857715430863, 69.58917835671343, 69.88977955911824, 70.19038076152304, 70.49098196392785, 70.79158316633266, 71.09218436873746, 71.3927855711423, 71.6933867735471, 71.99398797595191, 72.29458917835672, 72.59519038076152, 72.89579158316633, 73.19639278557113, 73.49699398797594, 73.79759519038078, 74.09819639278558, 74.39879759519039, 74.6993987975952, 75.0])\n", - " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", - " \n", - "\n", - " color_map_98b95bf96ec17767eb68199eee93b512.x = d3.scale.linear()\n", - " .domain([-75.0, 75.0])\n", - " .range([0, 450 - 50]);\n", - "\n", - " color_map_98b95bf96ec17767eb68199eee93b512.legend = L.control({position: 'topright'});\n", - " color_map_98b95bf96ec17767eb68199eee93b512.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_98b95bf96ec17767eb68199eee93b512.legend.addTo(map_56fa48c3258831963448f1940c23f288);\n", - "\n", - " color_map_98b95bf96ec17767eb68199eee93b512.xAxis = d3.svg.axis()\n", - " .scale(color_map_98b95bf96ec17767eb68199eee93b512.x)\n", - " .orient("top")\n", - " .tickSize(1)\n", - " .tickValues([-75.0, '', -45.0, '', -15.0, '', 15.0, '', 45.0, '', 75.0, '']);\n", - "\n", - " color_map_98b95bf96ec17767eb68199eee93b512.svg = d3.select(".legend.leaflet-control").append("svg")\n", - " .attr("id", 'legend')\n", - " .attr("width", 450)\n", - " .attr("height", 40);\n", - "\n", - " color_map_98b95bf96ec17767eb68199eee93b512.g = color_map_98b95bf96ec17767eb68199eee93b512.svg.append("g")\n", - " .attr("class", "key")\n", - " .attr("fill", "black")\n", - " .attr("transform", "translate(25,16)");\n", - "\n", - " color_map_98b95bf96ec17767eb68199eee93b512.g.selectAll("rect")\n", - " .data(color_map_98b95bf96ec17767eb68199eee93b512.color.range().map(function(d, i) {\n", - " return {\n", - " x0: i ? color_map_98b95bf96ec17767eb68199eee93b512.x(color_map_98b95bf96ec17767eb68199eee93b512.color.domain()[i - 1]) : color_map_98b95bf96ec17767eb68199eee93b512.x.range()[0],\n", - " x1: i < color_map_98b95bf96ec17767eb68199eee93b512.color.domain().length ? color_map_98b95bf96ec17767eb68199eee93b512.x(color_map_98b95bf96ec17767eb68199eee93b512.color.domain()[i]) : color_map_98b95bf96ec17767eb68199eee93b512.x.range()[1],\n", - " z: d\n", - " };\n", - " }))\n", - " .enter().append("rect")\n", - " .attr("height", 40 - 30)\n", - " .attr("x", function(d) { return d.x0; })\n", - " .attr("width", function(d) { return d.x1 - d.x0; })\n", - " .style("fill", function(d) { return d.z; });\n", - "\n", - " color_map_98b95bf96ec17767eb68199eee93b512.g.call(color_map_98b95bf96ec17767eb68199eee93b512.xAxis).append("text")\n", - " .attr("class", "caption")\n", - " .attr("y", 21)\n", - " .attr("fill", "black")\n", - " .text("m/s");\n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 17, + "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# Use the new plot_folium_from_VEDA_STAC function\n", - "m = putils.plot_folium_from_VEDA_STAC(\n", - " tiles_url_template=tiles[\"tiles\"][0],\n", + "# Use the new plot_folium_SidebySide_layer_from_VEDA_STAC function from plotutils\n", + "m = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", + " tiles_url_left=tiles_refl[\"tiles\"][0],\n", + " tiles_url_right=tiles_vel[\"tiles\"][0],\n", " center_coords=[41.668, -95.372],\n", " zoom_level=14,\n", - " rescale=(vmin, vmax),\n", - " colormap_name=colormap_name,\n", - " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", - " layer_name=\"DOW7 Velocity (Harlan, IA)\",\n", - " date=f\"{date}T00:00:00Z\",\n", - " colorbar_caption=\"m/s\",\n", - " attribution=\"DOW7 Velocity (Harlan, IA)\",\n", - " tile_name=\"DOW7 Velocity (Harlan, IA)\",\n", + " title=\"DOW7 Comparison β€” Harlan, IA β€” April 26, 2024\",\n", + " label_left=\"← Reflectivity (-10 to 50 dBZ)\",\n", + " label_right=\"Velocity (-75 to 75 m/s) β†’\",\n", + " layer_name_left=\"DOW7 Reflectivity\",\n", + " layer_name_right=\"DOW7 Velocity\",\n", " opacity=0.8,\n", - " height=\"890px\",\n", + " basemap_style='esri-satellite-labels',\n", + " height=\"800px\",\n", + " width=\"100%\"\n", ")\n", "\n", - "print(\n", - " \"DOW-collected velocity values from the Minden-Harlan, Iowa EF-3 tornado on April 26, 2024 as it passed northwest of Harlan.\"\n", - ")\n", + "print(\"Interactive side-by-side comparison of DOW7 reflectivity and velocity data.\")\n", + "print(\"Drag the vertical slider to reveal more of either dataset.\")\n", + "print()\n", + "\n", "# Display the map\n", "m" ] @@ -7452,8 +7231,6 @@ ], "source": [ "# TODO: Change collection_ID and date\n", - "client_STAC = Client.open(STAC_API_URL)\n", - "\n", "collection_id = \"tornadoes-2024-dow-rhohv-greenfield\"\n", "date = \"2024-05-21\"\n", "\n", @@ -7543,10 +7320,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_b75a1ceac32ddc457d536d0528596633 {\n", + " #map_c2f4e5ef865cdaf0cf5130f82b4c35a2 {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 890.0px;\n", + " height: 800.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -7597,14 +7374,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_b75a1ceac32ddc457d536d0528596633" ></div>\n", + " <div class="folium-map" id="map_c2f4e5ef865cdaf0cf5130f82b4c35a2" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_b75a1ceac32ddc457d536d0528596633 = L.map(\n", - " "map_b75a1ceac32ddc457d536d0528596633",\n", + " var map_c2f4e5ef865cdaf0cf5130f82b4c35a2 = L.map(\n", + " "map_c2f4e5ef865cdaf0cf5130f82b4c35a2",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -7616,20 +7393,20 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_b75a1ceac32ddc457d536d0528596633);\n", + " L.control.scale().addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_65a017f4713415748ba9291d566430a4 = L.tileLayer(\n", - " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", + " var tile_layer_b941c8835f93f16741255b01fbaab71b = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", - " "maxZoom": 19,\n", - " "maxNativeZoom": 19,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", " "noWrap": false,\n", - " "attribution": "\\u0026copy; \\u003ca href=\\"https://www.openstreetmap.org/copyright\\"\\u003eOpenStreetMap\\u003c/a\\u003e contributors",\n", + " "attribution": "Esri",\n", " "subdomains": "abc",\n", " "detectRetina": false,\n", " "tms": false,\n", @@ -7639,10 +7416,30 @@ " );\n", " \n", " \n", - " tile_layer_65a017f4713415748ba9291d566430a4.addTo(map_b75a1ceac32ddc457d536d0528596633);\n", + " tile_layer_b941c8835f93f16741255b01fbaab71b.addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", " \n", " \n", - " var tile_layer_e4c634a4ff3580e2f0e9d9fb7c6d6099 = L.tileLayer(\n", + " var tile_layer_a3ee5fd2284a347fe966fcd68efacb65 = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", + " {\n", + " "minZoom": 0,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", + " "noWrap": false,\n", + " "attribution": "Esri",\n", + " "subdomains": "abc",\n", + " "detectRetina": false,\n", + " "tms": false,\n", + " "opacity": 1,\n", + "}\n", + "\n", + " );\n", + " \n", + " \n", + " tile_layer_a3ee5fd2284a347fe966fcd68efacb65.addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", + " \n", + " \n", + " var tile_layer_0a90c390342c067ee9b33a09fdb8eef7 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C1",\n", " {\n", " "minZoom": 0,\n", @@ -7659,66 +7456,67 @@ " );\n", " \n", " \n", - " tile_layer_e4c634a4ff3580e2f0e9d9fb7c6d6099.addTo(map_b75a1ceac32ddc457d536d0528596633);\n", + " tile_layer_0a90c390342c067ee9b33a09fdb8eef7.addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", " \n", " \n", - " var layer_control_c59bdaa5b5484fa04de6d472efc35630_layers = {\n", + " var layer_control_2efe2079ff259ac54d37b5511e1931de_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_65a017f4713415748ba9291d566430a4,\n", + " "ESRI Satellite" : tile_layer_b941c8835f93f16741255b01fbaab71b,\n", " },\n", " overlays : {\n", - " "DOW7 Correlation Coefficient (Greenfield, IA)" : tile_layer_e4c634a4ff3580e2f0e9d9fb7c6d6099,\n", + " "Place Labels" : tile_layer_a3ee5fd2284a347fe966fcd68efacb65,\n", + " "DOW7 Correlation Coefficient (Greenfield, IA)" : tile_layer_0a90c390342c067ee9b33a09fdb8eef7,\n", " },\n", " };\n", - " let layer_control_c59bdaa5b5484fa04de6d472efc35630 = L.control.layers(\n", - " layer_control_c59bdaa5b5484fa04de6d472efc35630_layers.base_layers,\n", - " layer_control_c59bdaa5b5484fa04de6d472efc35630_layers.overlays,\n", + " let layer_control_2efe2079ff259ac54d37b5511e1931de = L.control.layers(\n", + " layer_control_2efe2079ff259ac54d37b5511e1931de_layers.base_layers,\n", + " layer_control_2efe2079ff259ac54d37b5511e1931de_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_b75a1ceac32ddc457d536d0528596633);\n", + " ).addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", "\n", " \n", " \n", - " var color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d = {};\n", + " var color_map_99bdc18081ecc556683dea1c99a69b57 = {};\n", "\n", " \n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color = d3.scale.threshold()\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.color = d3.scale.threshold()\n", " .domain([0.0, 0.002004008016032064, 0.004008016032064128, 0.006012024048096192, 0.008016032064128256, 0.01002004008016032, 0.012024048096192385, 0.014028056112224449, 0.01603206412825651, 0.018036072144288578, 0.02004008016032064, 0.022044088176352707, 0.02404809619238477, 0.026052104208416832, 0.028056112224448898, 0.03006012024048096, 0.03206412825651302, 0.03406813627254509, 0.036072144288577156, 0.03807615230460922, 0.04008016032064128, 0.04208416833667335, 0.04408817635270541, 0.04609218436873747, 0.04809619238476954, 0.050100200400801605, 0.052104208416833664, 0.05410821643286573, 0.056112224448897796, 0.05811623246492986, 0.06012024048096192, 0.06212424849699399, 0.06412825651302605, 0.06613226452905811, 0.06813627254509018, 0.07014028056112225, 0.07214428857715431, 0.07414829659318638, 0.07615230460921844, 0.0781563126252505, 0.08016032064128256, 0.08216432865731463, 0.0841683366733467, 0.08617234468937876, 0.08817635270541083, 0.09018036072144289, 0.09218436873747494, 0.09418837675350701, 0.09619238476953908, 0.09819639278557114, 0.10020040080160321, 0.10220440881763528, 0.10420841683366733, 0.1062124248496994, 0.10821643286573146, 0.11022044088176353, 0.11222444889779559, 0.11422845691382766, 0.11623246492985972, 0.11823647294589178, 0.12024048096192384, 0.12224448897795591, 0.12424849699398798, 0.12625250501002003, 0.1282565130260521, 0.13026052104208416, 0.13226452905811623, 0.1342685370741483, 0.13627254509018036, 0.13827655310621242, 0.1402805611222445, 0.14228456913827656, 0.14428857715430862, 0.1462925851703407, 0.14829659318637275, 0.15030060120240482, 0.1523046092184369, 0.15430861723446893, 0.156312625250501, 0.15831663326653306, 0.16032064128256512, 0.1623246492985972, 0.16432865731462926, 0.16633266533066132, 0.1683366733466934, 0.17034068136272545, 0.17234468937875752, 0.1743486973947896, 0.17635270541082165, 0.17835671342685372, 0.18036072144288579, 0.18236472945891782, 0.1843687374749499, 0.18637274549098196, 0.18837675350701402, 0.1903807615230461, 0.19238476953907815, 0.19438877755511022, 0.1963927855711423, 0.19839679358717435, 0.20040080160320642, 0.20240480961923848, 0.20440881763527055, 0.20641282565130262, 0.20841683366733466, 0.21042084168336672, 0.2124248496993988, 0.21442885771543085, 0.21643286573146292, 0.218436873747495, 0.22044088176352705, 0.22244488977955912, 0.22444889779559118, 0.22645290581162325, 0.22845691382765532, 0.23046092184368738, 0.23246492985971945, 0.23446893787575152, 0.23647294589178355, 0.23847695390781562, 0.24048096192384769, 0.24248496993987975, 0.24448897795591182, 0.24649298597194388, 0.24849699398797595, 0.250501002004008, 0.25250501002004005, 0.2545090180360721, 0.2565130260521042, 0.25851703406813625, 0.2605210420841683, 0.2625250501002004, 0.26452905811623245, 0.2665330661322645, 0.2685370741482966, 0.27054108216432865, 0.2725450901803607, 0.2745490981963928, 0.27655310621242485, 0.2785571142284569, 0.280561122244489, 0.28256513026052105, 0.2845691382765531, 0.2865731462925852, 0.28857715430861725, 0.2905811623246493, 0.2925851703406814, 0.29458917835671344, 0.2965931863727455, 0.2985971943887776, 0.30060120240480964, 0.3026052104208417, 0.3046092184368738, 0.3066132264529058, 0.30861723446893785, 0.3106212424849699, 0.312625250501002, 0.31462925851703405, 0.3166332665330661, 0.3186372745490982, 0.32064128256513025, 0.3226452905811623, 0.3246492985971944, 0.32665330661322645, 0.3286573146292585, 0.3306613226452906, 0.33266533066132264, 0.3346693386773547, 0.3366733466933868, 0.33867735470941884, 0.3406813627254509, 0.342685370741483, 0.34468937875751504, 0.3466933867735471, 0.3486973947895792, 0.35070140280561124, 0.3527054108216433, 0.35470941883767537, 0.35671342685370744, 0.3587174348697395, 0.36072144288577157, 0.3627254509018036, 0.36472945891783565, 0.3667334669338677, 0.3687374749498998, 0.37074148296593185, 0.3727454909819639, 0.374749498997996, 0.37675350701402804, 0.3787575150300601, 0.3807615230460922, 0.38276553106212424, 0.3847695390781563, 0.3867735470941884, 0.38877755511022044, 0.3907815631262525, 0.3927855711422846, 0.39478957915831664, 0.3967935871743487, 0.39879759519038077, 0.40080160320641284, 0.4028056112224449, 0.40480961923847697, 0.40681362725450904, 0.4088176352705411, 0.41082164328657317, 0.41282565130260523, 0.4148296593186373, 0.4168336673346693, 0.4188376753507014, 0.42084168336673344, 0.4228456913827655, 0.4248496993987976, 0.42685370741482964, 0.4288577154308617, 0.4308617234468938, 0.43286573146292584, 0.4348697394789579, 0.43687374749499, 0.43887775551102204, 0.4408817635270541, 0.44288577154308617, 0.44488977955911824, 0.4468937875751503, 0.44889779559118237, 0.45090180360721444, 0.4529058116232465, 0.45490981963927857, 0.45691382765531063, 0.4589178356713427, 0.46092184368737477, 0.46292585170340683, 0.4649298597194389, 0.46693386773547096, 0.46893787575150303, 0.4709418837675351, 0.4729458917835671, 0.4749498997995992, 0.47695390781563124, 0.4789579158316633, 0.48096192384769537, 0.48296593186372744, 0.4849699398797595, 0.48697394789579157, 0.48897795591182364, 0.4909819639278557, 0.49298597194388777, 0.49498997995991983, 0.4969939879759519, 0.49899799599198397, 0.501002004008016, 0.503006012024048, 0.5050100200400801, 0.5070140280561122, 0.5090180360721442, 0.5110220440881763, 0.5130260521042084, 0.5150300601202404, 0.5170340681362725, 0.5190380761523046, 0.5210420841683366, 0.5230460921843687, 0.5250501002004008, 0.5270541082164328, 0.5290581162324649, 0.531062124248497, 0.533066132264529, 0.5350701402805611, 0.5370741482965932, 0.5390781563126252, 0.5410821643286573, 0.5430861723446894, 0.5450901803607214, 0.5470941883767535, 0.5490981963927856, 0.5511022044088176, 0.5531062124248497, 0.5551102204408818, 0.5571142284569138, 0.5591182364729459, 0.561122244488978, 0.56312625250501, 0.5651302605210421, 0.5671342685370742, 0.5691382765531062, 0.5711422845691383, 0.5731462925851704, 0.5751503006012024, 0.5771543086172345, 0.5791583166332666, 0.5811623246492986, 0.5831663326653307, 0.5851703406813628, 0.5871743486973948, 0.5891783567134269, 0.591182364729459, 0.593186372745491, 0.5951903807615231, 0.5971943887775552, 0.5991983967935872, 0.6012024048096193, 0.6032064128256514, 0.6052104208416834, 0.6072144288577155, 0.6092184368737475, 0.6112224448897795, 0.6132264529058116, 0.6152304609218436, 0.6172344689378757, 0.6192384769539078, 0.6212424849699398, 0.6232464929859719, 0.625250501002004, 0.627254509018036, 0.6292585170340681, 0.6312625250501002, 0.6332665330661322, 0.6352705410821643, 0.6372745490981964, 0.6392785571142284, 0.6412825651302605, 0.6432865731462926, 0.6452905811623246, 0.6472945891783567, 0.6492985971943888, 0.6513026052104208, 0.6533066132264529, 0.655310621242485, 0.657314629258517, 0.6593186372745491, 0.6613226452905812, 0.6633266533066132, 0.6653306613226453, 0.6673346693386774, 0.6693386773547094, 0.6713426853707415, 0.6733466933867736, 0.6753507014028056, 0.6773547094188377, 0.6793587174348698, 0.6813627254509018, 0.6833667334669339, 0.685370741482966, 0.687374749498998, 0.6893787575150301, 0.6913827655310621, 0.6933867735470942, 0.6953907815631263, 0.6973947895791583, 0.6993987975951904, 0.7014028056112225, 0.7034068136272545, 0.7054108216432866, 0.7074148296593187, 0.7094188376753507, 0.7114228456913828, 0.7134268537074149, 0.7154308617234469, 0.717434869739479, 0.7194388777555111, 0.7214428857715431, 0.7234468937875751, 0.7254509018036072, 0.7274549098196392, 0.7294589178356713, 0.7314629258517034, 0.7334669338677354, 0.7354709418837675, 0.7374749498997996, 0.7394789579158316, 0.7414829659318637, 0.7434869739478958, 0.7454909819639278, 0.7474949899799599, 0.749498997995992, 0.751503006012024, 0.7535070140280561, 0.7555110220440882, 0.7575150300601202, 0.7595190380761523, 0.7615230460921844, 0.7635270541082164, 0.7655310621242485, 0.7675350701402806, 0.7695390781563126, 0.7715430861723447, 0.7735470941883767, 0.7755511022044088, 0.7775551102204409, 0.779559118236473, 0.781563126252505, 0.7835671342685371, 0.7855711422845691, 0.7875751503006012, 0.7895791583166333, 0.7915831663326653, 0.7935871743486974, 0.7955911823647295, 0.7975951903807615, 0.7995991983967936, 0.8016032064128257, 0.8036072144288577, 0.8056112224448898, 0.8076152304609219, 0.8096192384769539, 0.811623246492986, 0.8136272545090181, 0.8156312625250501, 0.8176352705410822, 0.8196392785571143, 0.8216432865731463, 0.8236472945891784, 0.8256513026052105, 0.8276553106212425, 0.8296593186372746, 0.8316633266533067, 0.8336673346693386, 0.8356713426853707, 0.8376753507014028, 0.8396793587174348, 0.8416833667334669, 0.843687374749499, 0.845691382765531, 0.8476953907815631, 0.8496993987975952, 0.8517034068136272, 0.8537074148296593, 0.8557114228456913, 0.8577154308617234, 0.8597194388777555, 0.8617234468937875, 0.8637274549098196, 0.8657314629258517, 0.8677354709418837, 0.8697394789579158, 0.8717434869739479, 0.87374749498998, 0.875751503006012, 0.8777555110220441, 0.8797595190380761, 0.8817635270541082, 0.8837675350701403, 0.8857715430861723, 0.8877755511022044, 0.8897795591182365, 0.8917835671342685, 0.8937875751503006, 0.8957915831663327, 0.8977955911823647, 0.8997995991983968, 0.9018036072144289, 0.9038076152304609, 0.905811623246493, 0.9078156312625251, 0.9098196392785571, 0.9118236472945892, 0.9138276553106213, 0.9158316633266533, 0.9178356713426854, 0.9198396793587175, 0.9218436873747495, 0.9238476953907816, 0.9258517034068137, 0.9278557114228457, 0.9298597194388778, 0.9318637274549099, 0.9338677354709419, 0.935871743486974, 0.9378757515030061, 0.9398797595190381, 0.9418837675350702, 0.9438877755511023, 0.9458917835671342, 0.9478957915831663, 0.9498997995991983, 0.9519038076152304, 0.9539078156312625, 0.9559118236472945, 0.9579158316633266, 0.9599198396793587, 0.9619238476953907, 0.9639278557114228, 0.9659318637274549, 0.9679358717434869, 0.969939879759519, 0.9719438877755511, 0.9739478957915831, 0.9759519038076152, 0.9779559118236473, 0.9799599198396793, 0.9819639278557114, 0.9839679358717435, 0.9859719438877755, 0.9879759519038076, 0.9899799599198397, 0.9919839679358717, 0.9939879759519038, 0.9959919839679359, 0.9979959919839679, 1.0])\n", " .range(['#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff']);\n", " \n", "\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x = d3.scale.linear()\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.x = d3.scale.linear()\n", " .domain([0.0, 1.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.legend = L.control({position: 'topright'});\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.legend.addTo(map_b75a1ceac32ddc457d536d0528596633);\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.legend = L.control({position: 'topright'});\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.legend.addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", "\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.xAxis = d3.svg.axis()\n", - " .scale(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x)\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.xAxis = d3.svg.axis()\n", + " .scale(color_map_99bdc18081ecc556683dea1c99a69b57.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([0.0, '', 0.2, '', 0.4, '', 0.6, '', 0.8, '', 1.0, '']);\n", "\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.g = color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.svg.append("g")\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.g = color_map_99bdc18081ecc556683dea1c99a69b57.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.g.selectAll("rect")\n", - " .data(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color.range().map(function(d, i) {\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.g.selectAll("rect")\n", + " .data(color_map_99bdc18081ecc556683dea1c99a69b57.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color.domain()[i - 1]) : color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x.range()[0],\n", - " x1: i < color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color.domain().length ? color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.color.domain()[i]) : color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.x.range()[1],\n", + " x0: i ? color_map_99bdc18081ecc556683dea1c99a69b57.x(color_map_99bdc18081ecc556683dea1c99a69b57.color.domain()[i - 1]) : color_map_99bdc18081ecc556683dea1c99a69b57.x.range()[0],\n", + " x1: i < color_map_99bdc18081ecc556683dea1c99a69b57.color.domain().length ? color_map_99bdc18081ecc556683dea1c99a69b57.x(color_map_99bdc18081ecc556683dea1c99a69b57.color.domain()[i]) : color_map_99bdc18081ecc556683dea1c99a69b57.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -7728,7 +7526,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.g.call(color_map_ca4e8d9a65cfee32a1d2c513f4fbdc4d.xAxis).append("text")\n", + " color_map_99bdc18081ecc556683dea1c99a69b57.g.call(color_map_99bdc18081ecc556683dea1c99a69b57.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -7737,7 +7535,7 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 20, @@ -7759,7 +7557,8 @@ " attribution=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", " tile_name=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", " opacity=0.8,\n", - " height=\"890px\",\n", + " height=\"800px\",\n", + " basemap_style=\"esri-satellite-labels\" # Use satellite with labels for better context\n", ")\n", "\n", "print(\n", @@ -8710,8 +8509,6 @@ ], "source": [ "# TODO: Change collection_ID and date\n", - "client_STAC = Client.open(STAC_API_URL)\n", - "\n", "collection_id = \"tornadoes-2024-dow-vmax-greenfield\"\n", "date = \"2024-05-21\"\n", "\n", @@ -8801,10 +8598,10 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_185e938e41429441c62f1bd1899dd6e8 {\n", + " #map_eceb6f59e73e341a89d569bbee148bda {\n", " position: relative;\n", " width: 100.0%;\n", - " height: 890.0px;\n", + " height: 800.0px;\n", " left: 0.0%;\n", " top: 0.0%;\n", " }\n", @@ -8855,14 +8652,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_185e938e41429441c62f1bd1899dd6e8" ></div>\n", + " <div class="folium-map" id="map_eceb6f59e73e341a89d569bbee148bda" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_185e938e41429441c62f1bd1899dd6e8 = L.map(\n", - " "map_185e938e41429441c62f1bd1899dd6e8",\n", + " var map_eceb6f59e73e341a89d569bbee148bda = L.map(\n", + " "map_eceb6f59e73e341a89d569bbee148bda",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -8874,20 +8671,40 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", + " L.control.scale().addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_d75cc4bba1e4d738e62f268348b4a22e = L.tileLayer(\n", - " "https://tile.openstreetmap.org/{z}/{x}/{y}.png",\n", + " var tile_layer_54aa993fa07aa3fb793ecb45f89d5644 = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", - " "maxZoom": 19,\n", - " "maxNativeZoom": 19,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", + " "noWrap": false,\n", + " "attribution": "Esri",\n", + " "subdomains": "abc",\n", + " "detectRetina": false,\n", + " "tms": false,\n", + " "opacity": 1,\n", + "}\n", + "\n", + " );\n", + " \n", + " \n", + " tile_layer_54aa993fa07aa3fb793ecb45f89d5644.addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", + " \n", + " \n", + " var tile_layer_82b7bb998fc23daea51579bbb9b2dbf7 = L.tileLayer(\n", + " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", + " {\n", + " "minZoom": 0,\n", + " "maxZoom": 18,\n", + " "maxNativeZoom": 18,\n", " "noWrap": false,\n", - " "attribution": "\\u0026copy; \\u003ca href=\\"https://www.openstreetmap.org/copyright\\"\\u003eOpenStreetMap\\u003c/a\\u003e contributors",\n", + " "attribution": "Esri",\n", " "subdomains": "abc",\n", " "detectRetina": false,\n", " "tms": false,\n", @@ -8897,10 +8714,10 @@ " );\n", " \n", " \n", - " tile_layer_d75cc4bba1e4d738e62f268348b4a22e.addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", + " tile_layer_82b7bb998fc23daea51579bbb9b2dbf7.addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", " \n", " \n", - " var tile_layer_131334a227f1bbaf34525155b595a61d = L.tileLayer(\n", + " var tile_layer_b09ce80693978d33af09ba93eca58c26 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=gist_ncar\\u0026rescale=55%2C250",\n", " {\n", " "minZoom": 0,\n", @@ -8917,66 +8734,67 @@ " );\n", " \n", " \n", - " tile_layer_131334a227f1bbaf34525155b595a61d.addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", + " tile_layer_b09ce80693978d33af09ba93eca58c26.addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", " \n", " \n", - " var layer_control_3ed1afd466178793ae484840bfb4c628_layers = {\n", + " var layer_control_b8f84c5e648edbe95552c1b287c86b37_layers = {\n", " base_layers : {\n", - " "openstreetmap" : tile_layer_d75cc4bba1e4d738e62f268348b4a22e,\n", + " "ESRI Satellite" : tile_layer_54aa993fa07aa3fb793ecb45f89d5644,\n", " },\n", " overlays : {\n", - " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_131334a227f1bbaf34525155b595a61d,\n", + " "Place Labels" : tile_layer_82b7bb998fc23daea51579bbb9b2dbf7,\n", + " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_b09ce80693978d33af09ba93eca58c26,\n", " },\n", " };\n", - " let layer_control_3ed1afd466178793ae484840bfb4c628 = L.control.layers(\n", - " layer_control_3ed1afd466178793ae484840bfb4c628_layers.base_layers,\n", - " layer_control_3ed1afd466178793ae484840bfb4c628_layers.overlays,\n", + " let layer_control_b8f84c5e648edbe95552c1b287c86b37 = L.control.layers(\n", + " layer_control_b8f84c5e648edbe95552c1b287c86b37_layers.base_layers,\n", + " layer_control_b8f84c5e648edbe95552c1b287c86b37_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", + " ).addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", "\n", " \n", " \n", - " var color_map_5d4cf076704581c2aaf5618ffbbec509 = {};\n", + " var color_map_e2af22c800c628180daa7616675a3af3 = {};\n", "\n", " \n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.color = d3.scale.threshold()\n", + " color_map_e2af22c800c628180daa7616675a3af3.color = d3.scale.threshold()\n", " .domain([55.0, 55.390781563126254, 55.78156312625251, 56.17234468937876, 56.56312625250501, 56.95390781563126, 57.344689378757515, 57.73547094188377, 58.12625250501002, 58.51703406813627, 58.90781563126252, 59.298597194388776, 59.68937875751503, 60.08016032064128, 60.47094188376754, 60.86172344689379, 61.25250501002004, 61.64328657314629, 62.034068136272545, 62.4248496993988, 62.81563126252505, 63.2064128256513, 63.59719438877755, 63.987975951903806, 64.37875751503006, 64.76953907815631, 65.16032064128257, 65.55110220440882, 65.94188376753507, 66.33266533066133, 66.72344689378758, 67.11422845691382, 67.50501002004007, 67.89579158316633, 68.28657314629258, 68.67735470941884, 69.06813627254509, 69.45891783567134, 69.8496993987976, 70.24048096192385, 70.6312625250501, 71.02204408817636, 71.4128256513026, 71.80360721442887, 72.1943887775551, 72.58517034068136, 72.97595190380761, 73.36673346693387, 73.75751503006012, 74.14829659318637, 74.53907815631263, 74.92985971943888, 75.32064128256513, 75.71142284569139, 76.10220440881764, 76.49298597194388, 76.88376753507015, 77.27454909819639, 77.66533066132264, 78.0561122244489, 78.44689378757515, 78.8376753507014, 79.22845691382766, 79.61923847695391, 80.01002004008016, 80.40080160320642, 80.79158316633266, 81.18236472945893, 81.57314629258516, 81.96392785571142, 82.35470941883767, 82.74549098196393, 83.13627254509018, 83.52705410821643, 83.91783567134269, 84.30861723446894, 84.6993987975952, 85.09018036072145, 85.4809619238477, 85.87174348697394, 86.26252505010021, 86.65330661322645, 87.04408817635272, 87.43486973947896, 87.82565130260521, 88.21643286573146, 88.60721442885772, 88.99799599198397, 89.38877755511022, 89.77955911823648, 90.17034068136272, 90.56112224448898, 90.95190380761522, 91.34268537074149, 91.73346693386773, 92.12424849699399, 92.51503006012024, 92.90581162324649, 93.29659318637275, 93.687374749499, 94.07815631262525, 94.4689378757515, 94.85971943887776, 95.250501002004, 95.64128256513027, 96.03206412825651, 96.42284569138278, 96.81362725450902, 97.20440881763527, 97.59519038076152, 97.98597194388778, 98.37675350701403, 98.76753507014028, 99.15831663326654, 99.54909819639278, 99.93987975951904, 100.33066132264528, 100.72144288577155, 101.11222444889779, 101.50300601202404, 101.8937875751503, 102.28456913827655, 102.6753507014028, 103.06613226452906, 103.45691382765531, 103.84769539078155, 104.23847695390782, 104.62925851703406, 105.02004008016033, 105.41082164328657, 105.80160320641284, 106.19238476953907, 106.58316633266533, 106.97394789579158, 107.36472945891784, 107.75551102204409, 108.14629258517034, 108.5370741482966, 108.92785571142284, 109.3186372745491, 109.70941883767534, 110.10020040080161, 110.49098196392785, 110.88176352705412, 111.27254509018036, 111.66332665330661, 112.05410821643287, 112.44488977955912, 112.83567134268537, 113.22645290581163, 113.61723446893788, 114.00801603206412, 114.39879759519039, 114.78957915831663, 115.1803607214429, 115.57114228456913, 115.96192384769539, 116.35270541082164, 116.7434869739479, 117.13426853707415, 117.5250501002004, 117.91583166332666, 118.3066132264529, 118.69739478957916, 119.08817635270542, 119.47895791583166, 119.86973947895791, 120.26052104208416, 120.65130260521042, 121.04208416833667, 121.43286573146293, 121.82364729458918, 122.21442885771543, 122.60521042084169, 122.99599198396794, 123.3867735470942, 123.77755511022045, 124.16833667334669, 124.55911823647294, 124.9498997995992, 125.34068136272545, 125.7314629258517, 126.12224448897796, 126.51302605210421, 126.90380761523046, 127.29458917835672, 127.68537074148297, 128.07615230460922, 128.46693386773546, 128.85771543086173, 129.24849699398797, 129.6392785571142, 130.03006012024048, 130.42084168336675, 130.81162324649299, 131.20240480961922, 131.5931863727455, 131.98396793587176, 132.374749498998, 132.76553106212424, 133.1563126252505, 133.54709418837675, 133.937875751503, 134.32865731462925, 134.71943887775552, 135.11022044088176, 135.501002004008, 135.89178356713427, 136.28256513026054, 136.67334669338678, 137.06412825651302, 137.45490981963928, 137.84569138276555, 138.23647294589176, 138.62725450901803, 139.0180360721443, 139.40881763527054, 139.79959919839678, 140.19038076152304, 140.5811623246493, 140.97194388777555, 141.3627254509018, 141.75350701402806, 142.14428857715433, 142.53507014028057, 142.9258517034068, 143.31663326653307, 143.7074148296593, 144.09819639278555, 144.48897795591182, 144.8797595190381, 145.27054108216433, 145.66132264529057, 146.05210420841684, 146.4428857715431, 146.83366733466934, 147.22444889779558, 147.61523046092185, 148.0060120240481, 148.39679358717433, 148.7875751503006, 149.17835671342687, 149.5691382765531, 149.95991983967934, 150.3507014028056, 150.74148296593188, 151.13226452905812, 151.52304609218436, 151.91382765531063, 152.3046092184369, 152.6953907815631, 153.08617234468937, 153.47695390781564, 153.86773547094188, 154.25851703406812, 154.6492985971944, 155.04008016032066, 155.4308617234469, 155.82164328657313, 156.2124248496994, 156.60320641282567, 156.9939879759519, 157.38476953907815, 157.77555110220442, 158.16633266533066, 158.5571142284569, 158.94789579158316, 159.33867735470943, 159.72945891783567, 160.1202404809619, 160.51102204408818, 160.90180360721445, 161.2925851703407, 161.68336673346693, 162.0741482965932, 162.46492985971943, 162.85571142284567, 163.24649298597194, 163.6372745490982, 164.02805611222445, 164.4188376753507, 164.80961923847696, 165.20040080160322, 165.59118236472946, 165.9819639278557, 166.37274549098197, 166.76352705410824, 167.15430861723445, 167.54509018036072, 167.93587174348698, 168.32665330661322, 168.71743486973946, 169.10821643286573, 169.498997995992, 169.88977955911824, 170.28056112224448, 170.67134268537075, 171.062124248497, 171.45290581162325, 171.8436873747495, 172.23446893787576, 172.625250501002, 173.01603206412824, 173.4068136272545, 173.79759519038078, 174.18837675350701, 174.57915831663325, 174.96993987975952, 175.3607214428858, 175.75150300601203, 176.14228456913827, 176.53306613226454, 176.92384769539078, 177.31462925851702, 177.70541082164328, 178.09619238476955, 178.4869739478958, 178.87775551102203, 179.2685370741483, 179.65931863727457, 180.0501002004008, 180.44088176352705, 180.8316633266533, 181.22244488977955, 181.6132264529058, 182.00400801603206, 182.39478957915833, 182.78557114228457, 183.17635270541084, 183.56713426853707, 183.9579158316633, 184.34869739478958, 184.73947895791582, 185.1302605210421, 185.52104208416833, 185.9118236472946, 186.30260521042084, 186.6933867735471, 187.08416833667334, 187.4749498997996, 187.86573146292585, 188.2565130260521, 188.64729458917836, 189.0380761523046, 189.42885771543087, 189.8196392785571, 190.21042084168337, 190.6012024048096, 190.99198396793588, 191.38276553106212, 191.7735470941884, 192.16432865731463, 192.5551102204409, 192.94589178356713, 193.33667334669337, 193.72745490981964, 194.11823647294588, 194.50901803607215, 194.8997995991984, 195.29058116232466, 195.6813627254509, 196.07214428857716, 196.4629258517034, 196.85370741482967, 197.2444889779559, 197.63527054108218, 198.02605210420842, 198.41683366733466, 198.80761523046093, 199.19839679358716, 199.58917835671343, 199.97995991983967, 200.37074148296594, 200.76152304609218, 201.15230460921845, 201.5430861723447, 201.93386773547095, 202.3246492985972, 202.71543086172343, 203.1062124248497, 203.49699398797594, 203.8877755511022, 204.27855711422845, 204.66933867735472, 205.06012024048096, 205.45090180360722, 205.84168336673346, 206.23246492985973, 206.62324649298597, 207.01402805611224, 207.40480961923848, 207.79559118236472, 208.18637274549098, 208.57715430861722, 208.9679358717435, 209.35871743486973, 209.749498997996, 210.14028056112224, 210.5310621242485, 210.92184368737475, 211.31262525050101, 211.70340681362725, 212.0941883767535, 212.48496993987976, 212.875751503006, 213.26653306613227, 213.6573146292585, 214.04809619238478, 214.43887775551102, 214.82965931863728, 215.22044088176352, 215.6112224448898, 216.00200400801603, 216.3927855711423, 216.78356713426854, 217.17434869739478, 217.56513026052104, 217.95591182364728, 218.34669338677355, 218.7374749498998, 219.12825651302606, 219.5190380761523, 219.90981963927857, 220.3006012024048, 220.69138276553107, 221.0821643286573, 221.47294589178355, 221.86372745490982, 222.25450901803606, 222.64529058116233, 223.03607214428857, 223.42685370741484, 223.81763527054107, 224.20841683366734, 224.59919839679358, 224.98997995991985, 225.3807615230461, 225.77154308617236, 226.1623246492986, 226.55310621242484, 226.9438877755511, 227.33466933867734, 227.7254509018036, 228.11623246492985, 228.50701402805612, 228.89779559118236, 229.28857715430863, 229.67935871743487, 230.07014028056113, 230.46092184368737, 230.85170340681364, 231.24248496993988, 231.63326653306612, 232.0240480961924, 232.41482965931863, 232.8056112224449, 233.19639278557113, 233.5871743486974, 233.97795591182364, 234.3687374749499, 234.75951903807615, 235.15030060120242, 235.54108216432866, 235.9318637274549, 236.32264529058116, 236.7134268537074, 237.10420841683367, 237.4949899799599, 237.88577154308618, 238.27655310621242, 238.6673346693387, 239.05811623246493, 239.4488977955912, 239.83967935871743, 240.2304609218437, 240.62124248496994, 241.01202404809618, 241.40280561122245, 241.7935871743487, 242.18436873747495, 242.5751503006012, 242.96593186372746, 243.3567134268537, 243.74749498997997, 244.1382765531062, 244.52905811623248, 244.91983967935872, 245.31062124248496, 245.70140280561122, 246.09218436873746, 246.48296593186373, 246.87374749498997, 247.26452905811624, 247.65531062124248, 248.04609218436875, 248.43687374749499, 248.82765531062125, 249.2184368737475, 249.60921843687376, 250.0])\n", " .range(['#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff']);\n", " \n", "\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.x = d3.scale.linear()\n", + " color_map_e2af22c800c628180daa7616675a3af3.x = d3.scale.linear()\n", " .domain([55.0, 250.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.legend = L.control({position: 'topright'});\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.legend.addTo(map_185e938e41429441c62f1bd1899dd6e8);\n", + " color_map_e2af22c800c628180daa7616675a3af3.legend = L.control({position: 'topright'});\n", + " color_map_e2af22c800c628180daa7616675a3af3.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_e2af22c800c628180daa7616675a3af3.legend.addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", "\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.xAxis = d3.svg.axis()\n", - " .scale(color_map_5d4cf076704581c2aaf5618ffbbec509.x)\n", + " color_map_e2af22c800c628180daa7616675a3af3.xAxis = d3.svg.axis()\n", + " .scale(color_map_e2af22c800c628180daa7616675a3af3.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([55.0, '', 94.0, '', 133.0, '', 172.0, '', 211.0, '', 250.0, '']);\n", "\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_e2af22c800c628180daa7616675a3af3.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.g = color_map_5d4cf076704581c2aaf5618ffbbec509.svg.append("g")\n", + " color_map_e2af22c800c628180daa7616675a3af3.g = color_map_e2af22c800c628180daa7616675a3af3.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.g.selectAll("rect")\n", - " .data(color_map_5d4cf076704581c2aaf5618ffbbec509.color.range().map(function(d, i) {\n", + " color_map_e2af22c800c628180daa7616675a3af3.g.selectAll("rect")\n", + " .data(color_map_e2af22c800c628180daa7616675a3af3.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_5d4cf076704581c2aaf5618ffbbec509.x(color_map_5d4cf076704581c2aaf5618ffbbec509.color.domain()[i - 1]) : color_map_5d4cf076704581c2aaf5618ffbbec509.x.range()[0],\n", - " x1: i < color_map_5d4cf076704581c2aaf5618ffbbec509.color.domain().length ? color_map_5d4cf076704581c2aaf5618ffbbec509.x(color_map_5d4cf076704581c2aaf5618ffbbec509.color.domain()[i]) : color_map_5d4cf076704581c2aaf5618ffbbec509.x.range()[1],\n", + " x0: i ? color_map_e2af22c800c628180daa7616675a3af3.x(color_map_e2af22c800c628180daa7616675a3af3.color.domain()[i - 1]) : color_map_e2af22c800c628180daa7616675a3af3.x.range()[0],\n", + " x1: i < color_map_e2af22c800c628180daa7616675a3af3.color.domain().length ? color_map_e2af22c800c628180daa7616675a3af3.x(color_map_e2af22c800c628180daa7616675a3af3.color.domain()[i]) : color_map_e2af22c800c628180daa7616675a3af3.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -8986,7 +8804,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_5d4cf076704581c2aaf5618ffbbec509.g.call(color_map_5d4cf076704581c2aaf5618ffbbec509.xAxis).append("text")\n", + " color_map_e2af22c800c628180daa7616675a3af3.g.call(color_map_e2af22c800c628180daa7616675a3af3.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -8995,7 +8813,7 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 23, @@ -9018,7 +8836,8 @@ " attribution=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", " tile_name=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", " opacity=0.8,\n", - " height=\"890px\",\n", + " height=\"800px\",\n", + " basemap_style=\"esri-satellite-labels\" # Use satellite with labels for better context\n", ")\n", "\n", "print(\n", From f36eefb89b818645e75c128fbf673bbb6a9ba694 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 15 Aug 2025 17:27:15 -0500 Subject: [PATCH 04/28] update quarto for tornadoes notebook --- _quarto.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/_quarto.yml b/_quarto.yml index 608fdf2b..15a77f09 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -124,6 +124,7 @@ website: - section: Stories contents: - user-guide/notebooks/stories/derechos.ipynb + - user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb - text: "---" - section: open-source-ecosystem/index.qmd contents: From aff1e99f6d63e049540c8322e12085601dddb3c5 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 15 Aug 2025 17:29:09 -0500 Subject: [PATCH 05/28] update jupyterhub link --- user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 502154a4..2a43b291 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -34,7 +34,7 @@ "id": "62f07d98-ab10-4ee2-a9d4-1df971949bfb", "metadata": {}, "source": [ - "

πŸš€ Launch in VEDA JupyterHub (requires access)

\n", + "

πŸš€ Launch in VEDA JupyterHub (requires access)

\n", "\n", "

To obtain credentials to VEDA Hub, follow this link for more information.

" ] From a50587c75a5472a3f5f05105db284d6b00d4f13c Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 15 Aug 2025 17:58:56 -0500 Subject: [PATCH 06/28] add pre and post tornado --- .../stories/tornadoes_2024_notebook.ipynb | 3656 ++++++++++++++++- 1 file changed, 3476 insertions(+), 180 deletions(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 2a43b291..f0954c21 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -1155,7 +1155,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_b30f461f6cc6bc77374783c9b80a08bb {\n", + " #map_5dcced00173e561f516a2afb342225e9 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -1208,7 +1208,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_b30f461f6cc6bc77374783c9b80a08bb" ></div>\n", + " <div class="folium-map" id="map_5dcced00173e561f516a2afb342225e9" ></div>\n", " \n", " \n", " <div style="\n", @@ -1309,8 +1309,8 @@ "<script>\n", " \n", " \n", - " var map_b30f461f6cc6bc77374783c9b80a08bb = L.map(\n", - " "map_b30f461f6cc6bc77374783c9b80a08bb",\n", + " var map_5dcced00173e561f516a2afb342225e9 = L.map(\n", + " "map_5dcced00173e561f516a2afb342225e9",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", @@ -1322,13 +1322,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", + " L.control.scale().addTo(map_5dcced00173e561f516a2afb342225e9);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_c29c12631f1d677ab68fb3f8882e6170 = L.tileLayer(\n", + " var tile_layer_7f4105fe8a0150c7dccaabc934cc19ad = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1345,10 +1345,10 @@ " );\n", " \n", " \n", - " tile_layer_c29c12631f1d677ab68fb3f8882e6170.addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", + " tile_layer_7f4105fe8a0150c7dccaabc934cc19ad.addTo(map_5dcced00173e561f516a2afb342225e9);\n", " \n", " \n", - " var tile_layer_2919f1d487feaf5c0c2a8cde2eef32ce = L.tileLayer(\n", + " var tile_layer_2d7bde900db255b7a785df115274acfb = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1365,10 +1365,10 @@ " );\n", " \n", " \n", - " tile_layer_2919f1d487feaf5c0c2a8cde2eef32ce.addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", + " tile_layer_2d7bde900db255b7a785df115274acfb.addTo(map_5dcced00173e561f516a2afb342225e9);\n", " \n", " \n", - " var tile_layer_2feddf7d2f500fbc92b313060e8294af = L.tileLayer(\n", + " var tile_layer_7d412852833a99bbba0252aa875b98c0 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -1385,34 +1385,34 @@ " );\n", " \n", " \n", - " tile_layer_2feddf7d2f500fbc92b313060e8294af.addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", + " tile_layer_7d412852833a99bbba0252aa875b98c0.addTo(map_5dcced00173e561f516a2afb342225e9);\n", " \n", " \n", - " var layer_control_58b8c099aa8503abd3eb661e50747428_layers = {\n", + " var layer_control_2446781c18bdcbe007b2d404428ebce9_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_c29c12631f1d677ab68fb3f8882e6170,\n", + " "ESRI Satellite" : tile_layer_7f4105fe8a0150c7dccaabc934cc19ad,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_2919f1d487feaf5c0c2a8cde2eef32ce,\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_2feddf7d2f500fbc92b313060e8294af,\n", + " "Place Labels" : tile_layer_2d7bde900db255b7a785df115274acfb,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_7d412852833a99bbba0252aa875b98c0,\n", " },\n", " };\n", - " let layer_control_58b8c099aa8503abd3eb661e50747428 = L.control.layers(\n", - " layer_control_58b8c099aa8503abd3eb661e50747428_layers.base_layers,\n", - " layer_control_58b8c099aa8503abd3eb661e50747428_layers.overlays,\n", + " let layer_control_2446781c18bdcbe007b2d404428ebce9 = L.control.layers(\n", + " layer_control_2446781c18bdcbe007b2d404428ebce9_layers.base_layers,\n", + " layer_control_2446781c18bdcbe007b2d404428ebce9_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_b30f461f6cc6bc77374783c9b80a08bb);\n", + " ).addTo(map_5dcced00173e561f516a2afb342225e9);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 7, @@ -2465,7 +2465,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_488d364622f61b5c64f10bc411f215ea {\n", + " #map_51986cc7f7bb8c7c5edcad741991ac93 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -2518,7 +2518,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_488d364622f61b5c64f10bc411f215ea" ></div>\n", + " <div class="folium-map" id="map_51986cc7f7bb8c7c5edcad741991ac93" ></div>\n", " \n", " \n", " <div style="\n", @@ -2619,8 +2619,8 @@ "<script>\n", " \n", " \n", - " var map_488d364622f61b5c64f10bc411f215ea = L.map(\n", - " "map_488d364622f61b5c64f10bc411f215ea",\n", + " var map_51986cc7f7bb8c7c5edcad741991ac93 = L.map(\n", + " "map_51986cc7f7bb8c7c5edcad741991ac93",\n", " {\n", " center: [40.5, -84.05],\n", " crs: L.CRS.EPSG3857,\n", @@ -2632,13 +2632,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_488d364622f61b5c64f10bc411f215ea);\n", + " L.control.scale().addTo(map_51986cc7f7bb8c7c5edcad741991ac93);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_6e188083be906252ac4d767409856767 = L.tileLayer(\n", + " var tile_layer_01034166c35b1f387f53acfac636af40 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2655,10 +2655,10 @@ " );\n", " \n", " \n", - " tile_layer_6e188083be906252ac4d767409856767.addTo(map_488d364622f61b5c64f10bc411f215ea);\n", + " tile_layer_01034166c35b1f387f53acfac636af40.addTo(map_51986cc7f7bb8c7c5edcad741991ac93);\n", " \n", " \n", - " var tile_layer_2acbdaf1ac300a0d6e39d58232537024 = L.tileLayer(\n", + " var tile_layer_2d2ed7a53fe18bfb3eed150c28628c37 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2675,10 +2675,10 @@ " );\n", " \n", " \n", - " tile_layer_2acbdaf1ac300a0d6e39d58232537024.addTo(map_488d364622f61b5c64f10bc411f215ea);\n", + " tile_layer_2d2ed7a53fe18bfb3eed150c28628c37.addTo(map_51986cc7f7bb8c7c5edcad741991ac93);\n", " \n", " \n", - " var tile_layer_05c48367237d68d24a827cfd53268e4b = L.tileLayer(\n", + " var tile_layer_b50e5c1b1d7d67c6fbcd4de7c9a061a0 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -2695,34 +2695,34 @@ " );\n", " \n", " \n", - " tile_layer_05c48367237d68d24a827cfd53268e4b.addTo(map_488d364622f61b5c64f10bc411f215ea);\n", + " tile_layer_b50e5c1b1d7d67c6fbcd4de7c9a061a0.addTo(map_51986cc7f7bb8c7c5edcad741991ac93);\n", " \n", " \n", - " var layer_control_85102dbd29e01b679a9c9f54d0194cd5_layers = {\n", + " var layer_control_2878da9941cf4647bfa5e9a3d554bf43_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_6e188083be906252ac4d767409856767,\n", + " "ESRI Satellite" : tile_layer_01034166c35b1f387f53acfac636af40,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_2acbdaf1ac300a0d6e39d58232537024,\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_05c48367237d68d24a827cfd53268e4b,\n", + " "Place Labels" : tile_layer_2d2ed7a53fe18bfb3eed150c28628c37,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_b50e5c1b1d7d67c6fbcd4de7c9a061a0,\n", " },\n", " };\n", - " let layer_control_85102dbd29e01b679a9c9f54d0194cd5 = L.control.layers(\n", - " layer_control_85102dbd29e01b679a9c9f54d0194cd5_layers.base_layers,\n", - " layer_control_85102dbd29e01b679a9c9f54d0194cd5_layers.overlays,\n", + " let layer_control_2878da9941cf4647bfa5e9a3d554bf43 = L.control.layers(\n", + " layer_control_2878da9941cf4647bfa5e9a3d554bf43_layers.base_layers,\n", + " layer_control_2878da9941cf4647bfa5e9a3d554bf43_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_488d364622f61b5c64f10bc411f215ea);\n", + " ).addTo(map_51986cc7f7bb8c7c5edcad741991ac93);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 10, @@ -3804,7 +3804,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_369e02655300d520cc1cf861b8f54af3 {\n", + " #map_db21eb4beaeba804a928f3bcff98085d {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -3858,14 +3858,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_369e02655300d520cc1cf861b8f54af3" ></div>\n", + " <div class="folium-map" id="map_db21eb4beaeba804a928f3bcff98085d" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_369e02655300d520cc1cf861b8f54af3 = L.map(\n", - " "map_369e02655300d520cc1cf861b8f54af3",\n", + " var map_db21eb4beaeba804a928f3bcff98085d = L.map(\n", + " "map_db21eb4beaeba804a928f3bcff98085d",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -3877,13 +3877,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_369e02655300d520cc1cf861b8f54af3);\n", + " L.control.scale().addTo(map_db21eb4beaeba804a928f3bcff98085d);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_f69d7fcbc0966ba1c010ec5c55b26adb = L.tileLayer(\n", + " var tile_layer_5a70e89712667b6f81c0109891ae5734 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -3900,10 +3900,10 @@ " );\n", " \n", " \n", - " tile_layer_f69d7fcbc0966ba1c010ec5c55b26adb.addTo(map_369e02655300d520cc1cf861b8f54af3);\n", + " tile_layer_5a70e89712667b6f81c0109891ae5734.addTo(map_db21eb4beaeba804a928f3bcff98085d);\n", " \n", " \n", - " var tile_layer_a43121b0276bcfcdec0f6c2334e541ae = L.tileLayer(\n", + " var tile_layer_7960a473ba05dad8b5e9659cbee3e8a5 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", @@ -3920,66 +3920,66 @@ " );\n", " \n", " \n", - " tile_layer_a43121b0276bcfcdec0f6c2334e541ae.addTo(map_369e02655300d520cc1cf861b8f54af3);\n", + " tile_layer_7960a473ba05dad8b5e9659cbee3e8a5.addTo(map_db21eb4beaeba804a928f3bcff98085d);\n", " \n", " \n", - " var layer_control_1f320463fb3fe3eaf8b9b2b2bfdbb4ea_layers = {\n", + " var layer_control_f09c6419b480540517a149c372b71e9e_layers = {\n", " base_layers : {\n", - " "CartoDB Dark" : tile_layer_f69d7fcbc0966ba1c010ec5c55b26adb,\n", + " "CartoDB Dark" : tile_layer_5a70e89712667b6f81c0109891ae5734,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights" : tile_layer_a43121b0276bcfcdec0f6c2334e541ae,\n", + " "Black Marble Nightlights" : tile_layer_7960a473ba05dad8b5e9659cbee3e8a5,\n", " },\n", " };\n", - " let layer_control_1f320463fb3fe3eaf8b9b2b2bfdbb4ea = L.control.layers(\n", - " layer_control_1f320463fb3fe3eaf8b9b2b2bfdbb4ea_layers.base_layers,\n", - " layer_control_1f320463fb3fe3eaf8b9b2b2bfdbb4ea_layers.overlays,\n", + " let layer_control_f09c6419b480540517a149c372b71e9e = L.control.layers(\n", + " layer_control_f09c6419b480540517a149c372b71e9e_layers.base_layers,\n", + " layer_control_f09c6419b480540517a149c372b71e9e_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_369e02655300d520cc1cf861b8f54af3);\n", + " ).addTo(map_db21eb4beaeba804a928f3bcff98085d);\n", "\n", " \n", " \n", - " var color_map_c2f9969bceee0543fb80733c76e24179 = {};\n", + " var color_map_552677ac23da52502a3ca50153669d49 = {};\n", "\n", " \n", - " color_map_c2f9969bceee0543fb80733c76e24179.color = d3.scale.threshold()\n", + " color_map_552677ac23da52502a3ca50153669d49.color = d3.scale.threshold()\n", " .domain([-150.0, -149.3987975951904, -148.79759519038078, -148.19639278557113, -147.59519038076152, -146.9939879759519, -146.3927855711423, -145.79158316633266, -145.19038076152304, -144.58917835671343, -143.98797595190382, -143.38677354709418, -142.78557114228457, -142.18436873747495, -141.58316633266534, -140.9819639278557, -140.3807615230461, -139.77955911823648, -139.17835671342687, -138.57715430861722, -137.9759519038076, -137.374749498998, -136.7735470941884, -136.17234468937875, -135.57114228456913, -134.96993987975952, -134.3687374749499, -133.76753507014027, -133.16633266533066, -132.56513026052104, -131.96392785571143, -131.3627254509018, -130.76152304609218, -130.16032064128257, -129.55911823647295, -128.95791583166334, -128.3567134268537, -127.75551102204409, -127.15430861723448, -126.55310621242485, -125.95190380761522, -125.35070140280561, -124.749498997996, -124.14829659318637, -123.54709418837675, -122.94589178356713, -122.34468937875752, -121.7434869739479, -121.14228456913827, -120.54108216432866, -119.93987975951904, -119.33867735470942, -118.73747494989979, -118.13627254509018, -117.53507014028057, -116.93386773547094, -116.33266533066131, -115.7314629258517, -115.13026052104209, -114.52905811623246, -113.92785571142284, -113.32665330661322, -112.72545090180361, -112.12424849699399, -111.52304609218436, -110.92184368737475, -110.32064128256513, -109.71943887775551, -109.11823647294588, -108.51703406813627, -107.91583166332666, -107.31462925851704, -106.71342685370742, -106.11222444889779, -105.51102204408818, -104.90981963927857, -104.30861723446894, -103.70741482965931, -103.1062124248497, -102.50501002004009, -101.90380761523046, -101.30260521042084, -100.70140280561122, -100.10020040080161, -99.49899799599199, -98.89779559118236, -98.29659318637275, -97.69539078156313, -97.09418837675351, -96.49298597194388, -95.89178356713427, -95.29058116232466, -94.68937875751503, -94.0881763527054, -93.48697394789579, -92.88577154308618, -92.28456913827655, -91.68336673346693, -91.08216432865731, -90.4809619238477, -89.87975951903807, -89.27855711422845, -88.67735470941884, -88.07615230460922, -87.4749498997996, -86.87374749498997, -86.27254509018036, -85.67134268537075, -85.07014028056112, -84.46893787575151, -83.86773547094188, -83.26653306613227, -82.66533066132264, -82.06412825651303, -81.4629258517034, -80.86172344689379, -80.26052104208416, -79.65931863727455, -79.05811623246493, -78.45691382765531, -77.85571142284569, -77.25450901803607, -76.65330661322645, -76.05210420841684, -75.45090180360721, -74.8496993987976, -74.24849699398797, -73.64729458917836, -73.04609218436873, -72.44488977955912, -71.84368737474949, -71.24248496993988, -70.64128256513025, -70.04008016032064, -69.43887775551102, -68.8376753507014, -68.23647294589178, -67.63527054108216, -67.03406813627255, -66.43286573146293, -65.83166332665331, -65.23046092184369, -64.62925851703407, -64.02805611222445, -63.426853707414836, -62.82565130260521, -62.2244488977956, -61.62324649298597, -61.02204408817636, -60.42084168336673, -59.81963927855712, -59.21843687374749, -58.61723446893788, -58.016032064128254, -57.41482965931864, -56.813627254509015, -56.2124248496994, -55.611222444889776, -55.010020040080164, -54.40881763527054, -53.807615230460925, -53.2064128256513, -52.605210420841686, -52.00400801603206, -51.40280561122245, -50.80160320641282, -50.20040080160321, -49.59919839679358, -48.99799599198397, -48.39679358717434, -47.79559118236473, -47.194388777555105, -46.59318637274549, -45.991983967935866, -45.390781563126254, -44.78957915831663, -44.188376753507015, -43.58717434869739, -42.985971943887776, -42.38476953907815, -41.78356713426854, -41.18236472945891, -40.5811623246493, -39.979959919839686, -39.37875751503006, -38.77755511022045, -38.17635270541082, -37.57515030060121, -36.97394789579158, -36.37274549098197, -35.77154308617234, -35.17034068136273, -34.569138276553105, -33.96793587174349, -33.366733466933866, -32.76553106212425, -32.16432865731463, -31.563126252505015, -30.961923847695388, -30.360721442885776, -29.75951903807615, -29.158316633266537, -28.55711422845691, -27.9559118236473, -27.354709418837672, -26.75350701402806, -26.152304609218433, -25.55110220440882, -24.949899799599194, -24.348697394789582, -23.747494989979955, -23.146292585170343, -22.545090180360717, -21.943887775551104, -21.342685370741492, -20.74148296593185, -20.14028056112224, -19.539078156312627, -18.937875751503014, -18.336673346693374, -17.73547094188376, -17.13426853707415, -16.533066132264537, -15.931863727454896, -15.330661322645284, -14.729458917835672, -14.12825651302606, -13.527054108216447, -12.925851703406806, -12.324649298597194, -11.723446893787582, -11.12224448897797, -10.521042084168329, -9.919839679358716, -9.318637274549104, -8.717434869739492, -8.116232464929851, -7.515030060120239, -6.913827655310627, -6.312625250501014, -5.711422845691374, -5.110220440881761, -4.509018036072149, -3.9078156312625367, -3.306613226452896, -2.7054108216432837, -2.1042084168336714, -1.5030060120240591, -0.9018036072144184, -0.30060120240480614, 0.30060120240480614, 0.9018036072144184, 1.5030060120240591, 2.1042084168336714, 2.7054108216432837, 3.306613226452896, 3.9078156312625367, 4.509018036072149, 5.110220440881761, 5.711422845691374, 6.312625250501014, 6.913827655310627, 7.515030060120239, 8.116232464929851, 8.717434869739492, 9.318637274549104, 9.919839679358716, 10.521042084168329, 11.12224448897797, 11.723446893787582, 12.324649298597194, 12.925851703406806, 13.527054108216447, 14.12825651302606, 14.729458917835672, 15.330661322645284, 15.931863727454896, 16.533066132264537, 17.13426853707415, 17.73547094188376, 18.336673346693374, 18.937875751503014, 19.539078156312627, 20.14028056112224, 20.74148296593185, 21.342685370741492, 21.943887775551104, 22.545090180360717, 23.14629258517033, 23.74749498997997, 24.348697394789582, 24.949899799599194, 25.551102204408807, 26.152304609218447, 26.75350701402806, 27.354709418837672, 27.955911823647284, 28.557114228456925, 29.158316633266537, 29.75951903807615, 30.36072144288576, 30.961923847695402, 31.563126252505015, 32.16432865731463, 32.76553106212424, 33.36673346693388, 33.96793587174349, 34.569138276553105, 35.17034068136272, 35.77154308617236, 36.37274549098197, 36.97394789579158, 37.575150300601194, 38.176352705410835, 38.77755511022045, 39.37875751503006, 39.97995991983967, 40.58116232464931, 41.182364729458925, 41.78356713426854, 42.38476953907815, 42.98597194388776, 43.5871743486974, 44.188376753507015, 44.78957915831663, 45.39078156312624, 45.99198396793588, 46.59318637274549, 47.194388777555105, 47.79559118236472, 48.39679358717436, 48.99799599198397, 49.59919839679358, 50.200400801603195, 50.801603206412835, 51.40280561122245, 52.00400801603206, 52.60521042084167, 53.20641282565131, 53.807615230460925, 54.40881763527054, 55.01002004008015, 55.61122244488979, 56.2124248496994, 56.813627254509015, 57.41482965931863, 58.01603206412827, 58.61723446893788, 59.21843687374749, 59.819639278557105, 60.420841683366746, 61.02204408817636, 61.62324649298597, 62.22444889779558, 62.82565130260522, 63.426853707414836, 64.02805611222445, 64.62925851703406, 65.2304609218437, 65.83166332665331, 66.43286573146293, 67.03406813627254, 67.63527054108218, 68.23647294589179, 68.8376753507014, 69.43887775551102, 70.04008016032063, 70.64128256513027, 71.24248496993988, 71.84368737474949, 72.4448897795591, 73.04609218436875, 73.64729458917836, 74.24849699398797, 74.84969939879758, 75.45090180360722, 76.05210420841684, 76.65330661322645, 77.25450901803606, 77.8557114228457, 78.45691382765531, 79.05811623246493, 79.65931863727454, 80.26052104208418, 80.86172344689379, 81.4629258517034, 82.06412825651302, 82.66533066132266, 83.26653306613227, 83.86773547094188, 84.4689378757515, 85.07014028056113, 85.67134268537075, 86.27254509018036, 86.87374749498997, 87.47494989979961, 88.07615230460922, 88.67735470941884, 89.27855711422845, 89.87975951903809, 90.4809619238477, 91.08216432865731, 91.68336673346693, 92.28456913827657, 92.88577154308618, 93.48697394789579, 94.0881763527054, 94.68937875751504, 95.29058116232466, 95.89178356713427, 96.49298597194388, 97.0941883767535, 97.69539078156313, 98.29659318637275, 98.89779559118236, 99.49899799599197, 100.10020040080161, 100.70140280561122, 101.30260521042084, 101.90380761523045, 102.50501002004009, 103.1062124248497, 103.70741482965931, 104.30861723446893, 104.90981963927857, 105.51102204408818, 106.11222444889779, 106.7134268537074, 107.31462925851702, 107.91583166332663, 108.5170340681363, 109.11823647294591, 109.71943887775552, 110.32064128256513, 110.92184368737475, 111.52304609218436, 112.12424849699397, 112.72545090180358, 113.32665330661325, 113.92785571142286, 114.52905811623248, 115.13026052104209, 115.7314629258517, 116.33266533066131, 116.93386773547093, 117.53507014028054, 118.13627254509021, 118.73747494989982, 119.33867735470943, 119.93987975951904, 120.54108216432866, 121.14228456913827, 121.74348697394788, 122.3446893787575, 122.9458917835671, 123.54709418837678, 124.14829659318639, 124.749498997996, 125.35070140280561, 125.95190380761522, 126.55310621242484, 127.15430861723445, 127.75551102204406, 128.35671342685373, 128.95791583166334, 129.55911823647295, 130.16032064128257, 130.76152304609218, 131.3627254509018, 131.9639278557114, 132.56513026052102, 133.16633266533069, 133.7675350701403, 134.3687374749499, 134.96993987975952, 135.57114228456913, 136.17234468937875, 136.77354709418836, 137.37474949899797, 137.97595190380764, 138.57715430861725, 139.17835671342687, 139.77955911823648, 140.3807615230461, 140.9819639278557, 141.58316633266531, 142.18436873747493, 142.7855711422846, 143.3867735470942, 143.98797595190382, 144.58917835671343, 145.19038076152304, 145.79158316633266, 146.39278557114227, 146.99398797595188, 147.59519038076155, 148.19639278557116, 148.79759519038078, 149.3987975951904, 150.0])\n", " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", " \n", "\n", - " color_map_c2f9969bceee0543fb80733c76e24179.x = d3.scale.linear()\n", + " color_map_552677ac23da52502a3ca50153669d49.x = d3.scale.linear()\n", " .domain([-150.0, 150.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_c2f9969bceee0543fb80733c76e24179.legend = L.control({position: 'topright'});\n", - " color_map_c2f9969bceee0543fb80733c76e24179.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_c2f9969bceee0543fb80733c76e24179.legend.addTo(map_369e02655300d520cc1cf861b8f54af3);\n", + " color_map_552677ac23da52502a3ca50153669d49.legend = L.control({position: 'topright'});\n", + " color_map_552677ac23da52502a3ca50153669d49.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_552677ac23da52502a3ca50153669d49.legend.addTo(map_db21eb4beaeba804a928f3bcff98085d);\n", "\n", - " color_map_c2f9969bceee0543fb80733c76e24179.xAxis = d3.svg.axis()\n", - " .scale(color_map_c2f9969bceee0543fb80733c76e24179.x)\n", + " color_map_552677ac23da52502a3ca50153669d49.xAxis = d3.svg.axis()\n", + " .scale(color_map_552677ac23da52502a3ca50153669d49.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([-150.0, '', -90.0, '', -30.0, '', 30.0, '', 90.0, '', 150.0, '']);\n", "\n", - " color_map_c2f9969bceee0543fb80733c76e24179.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_552677ac23da52502a3ca50153669d49.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_c2f9969bceee0543fb80733c76e24179.g = color_map_c2f9969bceee0543fb80733c76e24179.svg.append("g")\n", + " color_map_552677ac23da52502a3ca50153669d49.g = color_map_552677ac23da52502a3ca50153669d49.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_c2f9969bceee0543fb80733c76e24179.g.selectAll("rect")\n", - " .data(color_map_c2f9969bceee0543fb80733c76e24179.color.range().map(function(d, i) {\n", + " color_map_552677ac23da52502a3ca50153669d49.g.selectAll("rect")\n", + " .data(color_map_552677ac23da52502a3ca50153669d49.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_c2f9969bceee0543fb80733c76e24179.x(color_map_c2f9969bceee0543fb80733c76e24179.color.domain()[i - 1]) : color_map_c2f9969bceee0543fb80733c76e24179.x.range()[0],\n", - " x1: i < color_map_c2f9969bceee0543fb80733c76e24179.color.domain().length ? color_map_c2f9969bceee0543fb80733c76e24179.x(color_map_c2f9969bceee0543fb80733c76e24179.color.domain()[i]) : color_map_c2f9969bceee0543fb80733c76e24179.x.range()[1],\n", + " x0: i ? color_map_552677ac23da52502a3ca50153669d49.x(color_map_552677ac23da52502a3ca50153669d49.color.domain()[i - 1]) : color_map_552677ac23da52502a3ca50153669d49.x.range()[0],\n", + " x1: i < color_map_552677ac23da52502a3ca50153669d49.color.domain().length ? color_map_552677ac23da52502a3ca50153669d49.x(color_map_552677ac23da52502a3ca50153669d49.color.domain()[i]) : color_map_552677ac23da52502a3ca50153669d49.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -3989,7 +3989,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_c2f9969bceee0543fb80733c76e24179.g.call(color_map_c2f9969bceee0543fb80733c76e24179.xAxis).append("text")\n", + " color_map_552677ac23da52502a3ca50153669d49.g.call(color_map_552677ac23da52502a3ca50153669d49.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -3998,7 +3998,7 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 13, @@ -5981,7 +5981,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 17, "id": "f01b3d85", "metadata": {}, "outputs": [ @@ -6016,7 +6016,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_d33b51f0745b7231a8422afa90b39984 {\n", + " #map_45abfd332f976ab4ac963934465dc957 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6121,14 +6121,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_d33b51f0745b7231a8422afa90b39984" ></div>\n", + " <div class="folium-map" id="map_45abfd332f976ab4ac963934465dc957" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_d33b51f0745b7231a8422afa90b39984 = L.map(\n", - " "map_d33b51f0745b7231a8422afa90b39984",\n", + " var map_45abfd332f976ab4ac963934465dc957 = L.map(\n", + " "map_45abfd332f976ab4ac963934465dc957",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6140,13 +6140,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " L.control.scale().addTo(map_45abfd332f976ab4ac963934465dc957);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_cdfb1979dfd6390a5c71f07ed7a20ab1 = L.tileLayer(\n", + " var tile_layer_22f3ffbbc96e1d1ce9ee0f2c7b88ea27 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6163,10 +6163,10 @@ " );\n", " \n", " \n", - " tile_layer_cdfb1979dfd6390a5c71f07ed7a20ab1.addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " tile_layer_22f3ffbbc96e1d1ce9ee0f2c7b88ea27.addTo(map_45abfd332f976ab4ac963934465dc957);\n", " \n", " \n", - " var tile_layer_3c04130e0f8a11c4f9242077d0bd2593 = L.tileLayer(\n", + " var tile_layer_d3a1880f5fc32057eb7e54141850b2ce = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6183,10 +6183,10 @@ " );\n", " \n", " \n", - " tile_layer_3c04130e0f8a11c4f9242077d0bd2593.addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " tile_layer_d3a1880f5fc32057eb7e54141850b2ce.addTo(map_45abfd332f976ab4ac963934465dc957);\n", " \n", " \n", - " var tile_layer_842020ae7f87326b7b017432e2482cc3 = L.tileLayer(\n", + " var tile_layer_675e7076d2f08a58789d19986e8fdea3 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", " {\n", " "minZoom": 0,\n", @@ -6203,10 +6203,10 @@ " );\n", " \n", " \n", - " tile_layer_842020ae7f87326b7b017432e2482cc3.addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " tile_layer_675e7076d2f08a58789d19986e8fdea3.addTo(map_45abfd332f976ab4ac963934465dc957);\n", " \n", " \n", - " var tile_layer_c4cfc569f335c98cbdcbeceee23ba93d = L.tileLayer(\n", + " var tile_layer_81861b9abd36de24a94cb206b01044e8 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6223,43 +6223,43 @@ " );\n", " \n", " \n", - " tile_layer_c4cfc569f335c98cbdcbeceee23ba93d.addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " tile_layer_81861b9abd36de24a94cb206b01044e8.addTo(map_45abfd332f976ab4ac963934465dc957);\n", " \n", " \n", - " var side_by_side_layers_4ec07f82a51f19e06582016cd48d4260 = L.control.sideBySide(\n", - " tile_layer_842020ae7f87326b7b017432e2482cc3, tile_layer_c4cfc569f335c98cbdcbeceee23ba93d\n", - " ).addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " var side_by_side_layers_2ce2ac926fb2722de90c83e45b3ab895 = L.control.sideBySide(\n", + " tile_layer_675e7076d2f08a58789d19986e8fdea3, tile_layer_81861b9abd36de24a94cb206b01044e8\n", + " ).addTo(map_45abfd332f976ab4ac963934465dc957);\n", " \n", " \n", - " var layer_control_4cb3ab9344a54e4791385e2e7add6f23_layers = {\n", + " var layer_control_af443b4bf39f8e671efe359b312d57cb_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_cdfb1979dfd6390a5c71f07ed7a20ab1,\n", + " "ESRI Satellite" : tile_layer_22f3ffbbc96e1d1ce9ee0f2c7b88ea27,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_3c04130e0f8a11c4f9242077d0bd2593,\n", - " "DOW7 Reflectivity" : tile_layer_842020ae7f87326b7b017432e2482cc3,\n", - " "DOW7 Velocity" : tile_layer_c4cfc569f335c98cbdcbeceee23ba93d,\n", + " "Place Labels" : tile_layer_d3a1880f5fc32057eb7e54141850b2ce,\n", + " "DOW7 Reflectivity" : tile_layer_675e7076d2f08a58789d19986e8fdea3,\n", + " "DOW7 Velocity" : tile_layer_81861b9abd36de24a94cb206b01044e8,\n", " },\n", " };\n", - " let layer_control_4cb3ab9344a54e4791385e2e7add6f23 = L.control.layers(\n", - " layer_control_4cb3ab9344a54e4791385e2e7add6f23_layers.base_layers,\n", - " layer_control_4cb3ab9344a54e4791385e2e7add6f23_layers.overlays,\n", + " let layer_control_af443b4bf39f8e671efe359b312d57cb = L.control.layers(\n", + " layer_control_af443b4bf39f8e671efe359b312d57cb_layers.base_layers,\n", + " layer_control_af443b4bf39f8e671efe359b312d57cb_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_d33b51f0745b7231a8422afa90b39984);\n", + " ).addTo(map_45abfd332f976ab4ac963934465dc957);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 25, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" } @@ -7320,7 +7320,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_c2f4e5ef865cdaf0cf5130f82b4c35a2 {\n", + " #map_e1fcc2d063d7e31fba11443993544b48 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -7374,14 +7374,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_c2f4e5ef865cdaf0cf5130f82b4c35a2" ></div>\n", + " <div class="folium-map" id="map_e1fcc2d063d7e31fba11443993544b48" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_c2f4e5ef865cdaf0cf5130f82b4c35a2 = L.map(\n", - " "map_c2f4e5ef865cdaf0cf5130f82b4c35a2",\n", + " var map_e1fcc2d063d7e31fba11443993544b48 = L.map(\n", + " "map_e1fcc2d063d7e31fba11443993544b48",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -7393,13 +7393,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", + " L.control.scale().addTo(map_e1fcc2d063d7e31fba11443993544b48);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_b941c8835f93f16741255b01fbaab71b = L.tileLayer(\n", + " var tile_layer_fdc85ff7a415824005c4610ebc5bb8f8 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -7416,10 +7416,10 @@ " );\n", " \n", " \n", - " tile_layer_b941c8835f93f16741255b01fbaab71b.addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", + " tile_layer_fdc85ff7a415824005c4610ebc5bb8f8.addTo(map_e1fcc2d063d7e31fba11443993544b48);\n", " \n", " \n", - " var tile_layer_a3ee5fd2284a347fe966fcd68efacb65 = L.tileLayer(\n", + " var tile_layer_9bb22ce14eeb378176702c6dab348a50 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -7436,10 +7436,10 @@ " );\n", " \n", " \n", - " tile_layer_a3ee5fd2284a347fe966fcd68efacb65.addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", + " tile_layer_9bb22ce14eeb378176702c6dab348a50.addTo(map_e1fcc2d063d7e31fba11443993544b48);\n", " \n", " \n", - " var tile_layer_0a90c390342c067ee9b33a09fdb8eef7 = L.tileLayer(\n", + " var tile_layer_dd0c929e7fed095150c806d8462a0e00 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C1",\n", " {\n", " "minZoom": 0,\n", @@ -7456,67 +7456,67 @@ " );\n", " \n", " \n", - " tile_layer_0a90c390342c067ee9b33a09fdb8eef7.addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", + " tile_layer_dd0c929e7fed095150c806d8462a0e00.addTo(map_e1fcc2d063d7e31fba11443993544b48);\n", " \n", " \n", - " var layer_control_2efe2079ff259ac54d37b5511e1931de_layers = {\n", + " var layer_control_80253f0fde818a4eee3535b9c4dc59d3_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_b941c8835f93f16741255b01fbaab71b,\n", + " "ESRI Satellite" : tile_layer_fdc85ff7a415824005c4610ebc5bb8f8,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_a3ee5fd2284a347fe966fcd68efacb65,\n", - " "DOW7 Correlation Coefficient (Greenfield, IA)" : tile_layer_0a90c390342c067ee9b33a09fdb8eef7,\n", + " "Place Labels" : tile_layer_9bb22ce14eeb378176702c6dab348a50,\n", + " "DOW7 Correlation Coefficient (Greenfield, IA)" : tile_layer_dd0c929e7fed095150c806d8462a0e00,\n", " },\n", " };\n", - " let layer_control_2efe2079ff259ac54d37b5511e1931de = L.control.layers(\n", - " layer_control_2efe2079ff259ac54d37b5511e1931de_layers.base_layers,\n", - " layer_control_2efe2079ff259ac54d37b5511e1931de_layers.overlays,\n", + " let layer_control_80253f0fde818a4eee3535b9c4dc59d3 = L.control.layers(\n", + " layer_control_80253f0fde818a4eee3535b9c4dc59d3_layers.base_layers,\n", + " layer_control_80253f0fde818a4eee3535b9c4dc59d3_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", + " ).addTo(map_e1fcc2d063d7e31fba11443993544b48);\n", "\n", " \n", " \n", - " var color_map_99bdc18081ecc556683dea1c99a69b57 = {};\n", + " var color_map_fbf2d2dcdea2165e74015aad107f7814 = {};\n", "\n", " \n", - " color_map_99bdc18081ecc556683dea1c99a69b57.color = d3.scale.threshold()\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.color = d3.scale.threshold()\n", " .domain([0.0, 0.002004008016032064, 0.004008016032064128, 0.006012024048096192, 0.008016032064128256, 0.01002004008016032, 0.012024048096192385, 0.014028056112224449, 0.01603206412825651, 0.018036072144288578, 0.02004008016032064, 0.022044088176352707, 0.02404809619238477, 0.026052104208416832, 0.028056112224448898, 0.03006012024048096, 0.03206412825651302, 0.03406813627254509, 0.036072144288577156, 0.03807615230460922, 0.04008016032064128, 0.04208416833667335, 0.04408817635270541, 0.04609218436873747, 0.04809619238476954, 0.050100200400801605, 0.052104208416833664, 0.05410821643286573, 0.056112224448897796, 0.05811623246492986, 0.06012024048096192, 0.06212424849699399, 0.06412825651302605, 0.06613226452905811, 0.06813627254509018, 0.07014028056112225, 0.07214428857715431, 0.07414829659318638, 0.07615230460921844, 0.0781563126252505, 0.08016032064128256, 0.08216432865731463, 0.0841683366733467, 0.08617234468937876, 0.08817635270541083, 0.09018036072144289, 0.09218436873747494, 0.09418837675350701, 0.09619238476953908, 0.09819639278557114, 0.10020040080160321, 0.10220440881763528, 0.10420841683366733, 0.1062124248496994, 0.10821643286573146, 0.11022044088176353, 0.11222444889779559, 0.11422845691382766, 0.11623246492985972, 0.11823647294589178, 0.12024048096192384, 0.12224448897795591, 0.12424849699398798, 0.12625250501002003, 0.1282565130260521, 0.13026052104208416, 0.13226452905811623, 0.1342685370741483, 0.13627254509018036, 0.13827655310621242, 0.1402805611222445, 0.14228456913827656, 0.14428857715430862, 0.1462925851703407, 0.14829659318637275, 0.15030060120240482, 0.1523046092184369, 0.15430861723446893, 0.156312625250501, 0.15831663326653306, 0.16032064128256512, 0.1623246492985972, 0.16432865731462926, 0.16633266533066132, 0.1683366733466934, 0.17034068136272545, 0.17234468937875752, 0.1743486973947896, 0.17635270541082165, 0.17835671342685372, 0.18036072144288579, 0.18236472945891782, 0.1843687374749499, 0.18637274549098196, 0.18837675350701402, 0.1903807615230461, 0.19238476953907815, 0.19438877755511022, 0.1963927855711423, 0.19839679358717435, 0.20040080160320642, 0.20240480961923848, 0.20440881763527055, 0.20641282565130262, 0.20841683366733466, 0.21042084168336672, 0.2124248496993988, 0.21442885771543085, 0.21643286573146292, 0.218436873747495, 0.22044088176352705, 0.22244488977955912, 0.22444889779559118, 0.22645290581162325, 0.22845691382765532, 0.23046092184368738, 0.23246492985971945, 0.23446893787575152, 0.23647294589178355, 0.23847695390781562, 0.24048096192384769, 0.24248496993987975, 0.24448897795591182, 0.24649298597194388, 0.24849699398797595, 0.250501002004008, 0.25250501002004005, 0.2545090180360721, 0.2565130260521042, 0.25851703406813625, 0.2605210420841683, 0.2625250501002004, 0.26452905811623245, 0.2665330661322645, 0.2685370741482966, 0.27054108216432865, 0.2725450901803607, 0.2745490981963928, 0.27655310621242485, 0.2785571142284569, 0.280561122244489, 0.28256513026052105, 0.2845691382765531, 0.2865731462925852, 0.28857715430861725, 0.2905811623246493, 0.2925851703406814, 0.29458917835671344, 0.2965931863727455, 0.2985971943887776, 0.30060120240480964, 0.3026052104208417, 0.3046092184368738, 0.3066132264529058, 0.30861723446893785, 0.3106212424849699, 0.312625250501002, 0.31462925851703405, 0.3166332665330661, 0.3186372745490982, 0.32064128256513025, 0.3226452905811623, 0.3246492985971944, 0.32665330661322645, 0.3286573146292585, 0.3306613226452906, 0.33266533066132264, 0.3346693386773547, 0.3366733466933868, 0.33867735470941884, 0.3406813627254509, 0.342685370741483, 0.34468937875751504, 0.3466933867735471, 0.3486973947895792, 0.35070140280561124, 0.3527054108216433, 0.35470941883767537, 0.35671342685370744, 0.3587174348697395, 0.36072144288577157, 0.3627254509018036, 0.36472945891783565, 0.3667334669338677, 0.3687374749498998, 0.37074148296593185, 0.3727454909819639, 0.374749498997996, 0.37675350701402804, 0.3787575150300601, 0.3807615230460922, 0.38276553106212424, 0.3847695390781563, 0.3867735470941884, 0.38877755511022044, 0.3907815631262525, 0.3927855711422846, 0.39478957915831664, 0.3967935871743487, 0.39879759519038077, 0.40080160320641284, 0.4028056112224449, 0.40480961923847697, 0.40681362725450904, 0.4088176352705411, 0.41082164328657317, 0.41282565130260523, 0.4148296593186373, 0.4168336673346693, 0.4188376753507014, 0.42084168336673344, 0.4228456913827655, 0.4248496993987976, 0.42685370741482964, 0.4288577154308617, 0.4308617234468938, 0.43286573146292584, 0.4348697394789579, 0.43687374749499, 0.43887775551102204, 0.4408817635270541, 0.44288577154308617, 0.44488977955911824, 0.4468937875751503, 0.44889779559118237, 0.45090180360721444, 0.4529058116232465, 0.45490981963927857, 0.45691382765531063, 0.4589178356713427, 0.46092184368737477, 0.46292585170340683, 0.4649298597194389, 0.46693386773547096, 0.46893787575150303, 0.4709418837675351, 0.4729458917835671, 0.4749498997995992, 0.47695390781563124, 0.4789579158316633, 0.48096192384769537, 0.48296593186372744, 0.4849699398797595, 0.48697394789579157, 0.48897795591182364, 0.4909819639278557, 0.49298597194388777, 0.49498997995991983, 0.4969939879759519, 0.49899799599198397, 0.501002004008016, 0.503006012024048, 0.5050100200400801, 0.5070140280561122, 0.5090180360721442, 0.5110220440881763, 0.5130260521042084, 0.5150300601202404, 0.5170340681362725, 0.5190380761523046, 0.5210420841683366, 0.5230460921843687, 0.5250501002004008, 0.5270541082164328, 0.5290581162324649, 0.531062124248497, 0.533066132264529, 0.5350701402805611, 0.5370741482965932, 0.5390781563126252, 0.5410821643286573, 0.5430861723446894, 0.5450901803607214, 0.5470941883767535, 0.5490981963927856, 0.5511022044088176, 0.5531062124248497, 0.5551102204408818, 0.5571142284569138, 0.5591182364729459, 0.561122244488978, 0.56312625250501, 0.5651302605210421, 0.5671342685370742, 0.5691382765531062, 0.5711422845691383, 0.5731462925851704, 0.5751503006012024, 0.5771543086172345, 0.5791583166332666, 0.5811623246492986, 0.5831663326653307, 0.5851703406813628, 0.5871743486973948, 0.5891783567134269, 0.591182364729459, 0.593186372745491, 0.5951903807615231, 0.5971943887775552, 0.5991983967935872, 0.6012024048096193, 0.6032064128256514, 0.6052104208416834, 0.6072144288577155, 0.6092184368737475, 0.6112224448897795, 0.6132264529058116, 0.6152304609218436, 0.6172344689378757, 0.6192384769539078, 0.6212424849699398, 0.6232464929859719, 0.625250501002004, 0.627254509018036, 0.6292585170340681, 0.6312625250501002, 0.6332665330661322, 0.6352705410821643, 0.6372745490981964, 0.6392785571142284, 0.6412825651302605, 0.6432865731462926, 0.6452905811623246, 0.6472945891783567, 0.6492985971943888, 0.6513026052104208, 0.6533066132264529, 0.655310621242485, 0.657314629258517, 0.6593186372745491, 0.6613226452905812, 0.6633266533066132, 0.6653306613226453, 0.6673346693386774, 0.6693386773547094, 0.6713426853707415, 0.6733466933867736, 0.6753507014028056, 0.6773547094188377, 0.6793587174348698, 0.6813627254509018, 0.6833667334669339, 0.685370741482966, 0.687374749498998, 0.6893787575150301, 0.6913827655310621, 0.6933867735470942, 0.6953907815631263, 0.6973947895791583, 0.6993987975951904, 0.7014028056112225, 0.7034068136272545, 0.7054108216432866, 0.7074148296593187, 0.7094188376753507, 0.7114228456913828, 0.7134268537074149, 0.7154308617234469, 0.717434869739479, 0.7194388777555111, 0.7214428857715431, 0.7234468937875751, 0.7254509018036072, 0.7274549098196392, 0.7294589178356713, 0.7314629258517034, 0.7334669338677354, 0.7354709418837675, 0.7374749498997996, 0.7394789579158316, 0.7414829659318637, 0.7434869739478958, 0.7454909819639278, 0.7474949899799599, 0.749498997995992, 0.751503006012024, 0.7535070140280561, 0.7555110220440882, 0.7575150300601202, 0.7595190380761523, 0.7615230460921844, 0.7635270541082164, 0.7655310621242485, 0.7675350701402806, 0.7695390781563126, 0.7715430861723447, 0.7735470941883767, 0.7755511022044088, 0.7775551102204409, 0.779559118236473, 0.781563126252505, 0.7835671342685371, 0.7855711422845691, 0.7875751503006012, 0.7895791583166333, 0.7915831663326653, 0.7935871743486974, 0.7955911823647295, 0.7975951903807615, 0.7995991983967936, 0.8016032064128257, 0.8036072144288577, 0.8056112224448898, 0.8076152304609219, 0.8096192384769539, 0.811623246492986, 0.8136272545090181, 0.8156312625250501, 0.8176352705410822, 0.8196392785571143, 0.8216432865731463, 0.8236472945891784, 0.8256513026052105, 0.8276553106212425, 0.8296593186372746, 0.8316633266533067, 0.8336673346693386, 0.8356713426853707, 0.8376753507014028, 0.8396793587174348, 0.8416833667334669, 0.843687374749499, 0.845691382765531, 0.8476953907815631, 0.8496993987975952, 0.8517034068136272, 0.8537074148296593, 0.8557114228456913, 0.8577154308617234, 0.8597194388777555, 0.8617234468937875, 0.8637274549098196, 0.8657314629258517, 0.8677354709418837, 0.8697394789579158, 0.8717434869739479, 0.87374749498998, 0.875751503006012, 0.8777555110220441, 0.8797595190380761, 0.8817635270541082, 0.8837675350701403, 0.8857715430861723, 0.8877755511022044, 0.8897795591182365, 0.8917835671342685, 0.8937875751503006, 0.8957915831663327, 0.8977955911823647, 0.8997995991983968, 0.9018036072144289, 0.9038076152304609, 0.905811623246493, 0.9078156312625251, 0.9098196392785571, 0.9118236472945892, 0.9138276553106213, 0.9158316633266533, 0.9178356713426854, 0.9198396793587175, 0.9218436873747495, 0.9238476953907816, 0.9258517034068137, 0.9278557114228457, 0.9298597194388778, 0.9318637274549099, 0.9338677354709419, 0.935871743486974, 0.9378757515030061, 0.9398797595190381, 0.9418837675350702, 0.9438877755511023, 0.9458917835671342, 0.9478957915831663, 0.9498997995991983, 0.9519038076152304, 0.9539078156312625, 0.9559118236472945, 0.9579158316633266, 0.9599198396793587, 0.9619238476953907, 0.9639278557114228, 0.9659318637274549, 0.9679358717434869, 0.969939879759519, 0.9719438877755511, 0.9739478957915831, 0.9759519038076152, 0.9779559118236473, 0.9799599198396793, 0.9819639278557114, 0.9839679358717435, 0.9859719438877755, 0.9879759519038076, 0.9899799599198397, 0.9919839679358717, 0.9939879759519038, 0.9959919839679359, 0.9979959919839679, 1.0])\n", " .range(['#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff']);\n", " \n", "\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.x = d3.scale.linear()\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.x = d3.scale.linear()\n", " .domain([0.0, 1.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.legend = L.control({position: 'topright'});\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.legend.addTo(map_c2f4e5ef865cdaf0cf5130f82b4c35a2);\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.legend = L.control({position: 'topright'});\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.legend.addTo(map_e1fcc2d063d7e31fba11443993544b48);\n", "\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.xAxis = d3.svg.axis()\n", - " .scale(color_map_99bdc18081ecc556683dea1c99a69b57.x)\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.xAxis = d3.svg.axis()\n", + " .scale(color_map_fbf2d2dcdea2165e74015aad107f7814.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([0.0, '', 0.2, '', 0.4, '', 0.6, '', 0.8, '', 1.0, '']);\n", "\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.g = color_map_99bdc18081ecc556683dea1c99a69b57.svg.append("g")\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.g = color_map_fbf2d2dcdea2165e74015aad107f7814.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.g.selectAll("rect")\n", - " .data(color_map_99bdc18081ecc556683dea1c99a69b57.color.range().map(function(d, i) {\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.g.selectAll("rect")\n", + " .data(color_map_fbf2d2dcdea2165e74015aad107f7814.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_99bdc18081ecc556683dea1c99a69b57.x(color_map_99bdc18081ecc556683dea1c99a69b57.color.domain()[i - 1]) : color_map_99bdc18081ecc556683dea1c99a69b57.x.range()[0],\n", - " x1: i < color_map_99bdc18081ecc556683dea1c99a69b57.color.domain().length ? color_map_99bdc18081ecc556683dea1c99a69b57.x(color_map_99bdc18081ecc556683dea1c99a69b57.color.domain()[i]) : color_map_99bdc18081ecc556683dea1c99a69b57.x.range()[1],\n", + " x0: i ? color_map_fbf2d2dcdea2165e74015aad107f7814.x(color_map_fbf2d2dcdea2165e74015aad107f7814.color.domain()[i - 1]) : color_map_fbf2d2dcdea2165e74015aad107f7814.x.range()[0],\n", + " x1: i < color_map_fbf2d2dcdea2165e74015aad107f7814.color.domain().length ? color_map_fbf2d2dcdea2165e74015aad107f7814.x(color_map_fbf2d2dcdea2165e74015aad107f7814.color.domain()[i]) : color_map_fbf2d2dcdea2165e74015aad107f7814.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -7526,7 +7526,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_99bdc18081ecc556683dea1c99a69b57.g.call(color_map_99bdc18081ecc556683dea1c99a69b57.xAxis).append("text")\n", + " color_map_fbf2d2dcdea2165e74015aad107f7814.g.call(color_map_fbf2d2dcdea2165e74015aad107f7814.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -7535,7 +7535,7 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 20, @@ -8512,10 +8512,10 @@ "collection_id = \"tornadoes-2024-dow-vmax-greenfield\"\n", "date = \"2024-05-21\"\n", "\n", - "results = client_STAC.search(collections=[collection_id], datetime=date)\n", - "\n", "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", "items = list(results.items())\n", "assert len(items) != 0, \"No items found\"\n", "item = items[0]\n", @@ -8598,7 +8598,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_eceb6f59e73e341a89d569bbee148bda {\n", + " #map_9b710bd14a055910770b67cb1760cfd4 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -8652,14 +8652,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_eceb6f59e73e341a89d569bbee148bda" ></div>\n", + " <div class="folium-map" id="map_9b710bd14a055910770b67cb1760cfd4" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_eceb6f59e73e341a89d569bbee148bda = L.map(\n", - " "map_eceb6f59e73e341a89d569bbee148bda",\n", + " var map_9b710bd14a055910770b67cb1760cfd4 = L.map(\n", + " "map_9b710bd14a055910770b67cb1760cfd4",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -8671,13 +8671,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", + " L.control.scale().addTo(map_9b710bd14a055910770b67cb1760cfd4);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_54aa993fa07aa3fb793ecb45f89d5644 = L.tileLayer(\n", + " var tile_layer_947d783daa64c74abc778df3c3aa4aed = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -8694,10 +8694,10 @@ " );\n", " \n", " \n", - " tile_layer_54aa993fa07aa3fb793ecb45f89d5644.addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", + " tile_layer_947d783daa64c74abc778df3c3aa4aed.addTo(map_9b710bd14a055910770b67cb1760cfd4);\n", " \n", " \n", - " var tile_layer_82b7bb998fc23daea51579bbb9b2dbf7 = L.tileLayer(\n", + " var tile_layer_fbdc02d0e5b49df7c134729b741d3ab3 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -8714,10 +8714,10 @@ " );\n", " \n", " \n", - " tile_layer_82b7bb998fc23daea51579bbb9b2dbf7.addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", + " tile_layer_fbdc02d0e5b49df7c134729b741d3ab3.addTo(map_9b710bd14a055910770b67cb1760cfd4);\n", " \n", " \n", - " var tile_layer_b09ce80693978d33af09ba93eca58c26 = L.tileLayer(\n", + " var tile_layer_9473f7f619edbced7bbb7bb955597db9 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=gist_ncar\\u0026rescale=55%2C250",\n", " {\n", " "minZoom": 0,\n", @@ -8734,67 +8734,67 @@ " );\n", " \n", " \n", - " tile_layer_b09ce80693978d33af09ba93eca58c26.addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", + " tile_layer_9473f7f619edbced7bbb7bb955597db9.addTo(map_9b710bd14a055910770b67cb1760cfd4);\n", " \n", " \n", - " var layer_control_b8f84c5e648edbe95552c1b287c86b37_layers = {\n", + " var layer_control_c10514a04ecf583aa95c637367ee701c_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_54aa993fa07aa3fb793ecb45f89d5644,\n", + " "ESRI Satellite" : tile_layer_947d783daa64c74abc778df3c3aa4aed,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_82b7bb998fc23daea51579bbb9b2dbf7,\n", - " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_b09ce80693978d33af09ba93eca58c26,\n", + " "Place Labels" : tile_layer_fbdc02d0e5b49df7c134729b741d3ab3,\n", + " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_9473f7f619edbced7bbb7bb955597db9,\n", " },\n", " };\n", - " let layer_control_b8f84c5e648edbe95552c1b287c86b37 = L.control.layers(\n", - " layer_control_b8f84c5e648edbe95552c1b287c86b37_layers.base_layers,\n", - " layer_control_b8f84c5e648edbe95552c1b287c86b37_layers.overlays,\n", + " let layer_control_c10514a04ecf583aa95c637367ee701c = L.control.layers(\n", + " layer_control_c10514a04ecf583aa95c637367ee701c_layers.base_layers,\n", + " layer_control_c10514a04ecf583aa95c637367ee701c_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", + " ).addTo(map_9b710bd14a055910770b67cb1760cfd4);\n", "\n", " \n", " \n", - " var color_map_e2af22c800c628180daa7616675a3af3 = {};\n", + " var color_map_e7d73edb1f8ba9eaae1416fb486b01ed = {};\n", "\n", " \n", - " color_map_e2af22c800c628180daa7616675a3af3.color = d3.scale.threshold()\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.color = d3.scale.threshold()\n", " .domain([55.0, 55.390781563126254, 55.78156312625251, 56.17234468937876, 56.56312625250501, 56.95390781563126, 57.344689378757515, 57.73547094188377, 58.12625250501002, 58.51703406813627, 58.90781563126252, 59.298597194388776, 59.68937875751503, 60.08016032064128, 60.47094188376754, 60.86172344689379, 61.25250501002004, 61.64328657314629, 62.034068136272545, 62.4248496993988, 62.81563126252505, 63.2064128256513, 63.59719438877755, 63.987975951903806, 64.37875751503006, 64.76953907815631, 65.16032064128257, 65.55110220440882, 65.94188376753507, 66.33266533066133, 66.72344689378758, 67.11422845691382, 67.50501002004007, 67.89579158316633, 68.28657314629258, 68.67735470941884, 69.06813627254509, 69.45891783567134, 69.8496993987976, 70.24048096192385, 70.6312625250501, 71.02204408817636, 71.4128256513026, 71.80360721442887, 72.1943887775551, 72.58517034068136, 72.97595190380761, 73.36673346693387, 73.75751503006012, 74.14829659318637, 74.53907815631263, 74.92985971943888, 75.32064128256513, 75.71142284569139, 76.10220440881764, 76.49298597194388, 76.88376753507015, 77.27454909819639, 77.66533066132264, 78.0561122244489, 78.44689378757515, 78.8376753507014, 79.22845691382766, 79.61923847695391, 80.01002004008016, 80.40080160320642, 80.79158316633266, 81.18236472945893, 81.57314629258516, 81.96392785571142, 82.35470941883767, 82.74549098196393, 83.13627254509018, 83.52705410821643, 83.91783567134269, 84.30861723446894, 84.6993987975952, 85.09018036072145, 85.4809619238477, 85.87174348697394, 86.26252505010021, 86.65330661322645, 87.04408817635272, 87.43486973947896, 87.82565130260521, 88.21643286573146, 88.60721442885772, 88.99799599198397, 89.38877755511022, 89.77955911823648, 90.17034068136272, 90.56112224448898, 90.95190380761522, 91.34268537074149, 91.73346693386773, 92.12424849699399, 92.51503006012024, 92.90581162324649, 93.29659318637275, 93.687374749499, 94.07815631262525, 94.4689378757515, 94.85971943887776, 95.250501002004, 95.64128256513027, 96.03206412825651, 96.42284569138278, 96.81362725450902, 97.20440881763527, 97.59519038076152, 97.98597194388778, 98.37675350701403, 98.76753507014028, 99.15831663326654, 99.54909819639278, 99.93987975951904, 100.33066132264528, 100.72144288577155, 101.11222444889779, 101.50300601202404, 101.8937875751503, 102.28456913827655, 102.6753507014028, 103.06613226452906, 103.45691382765531, 103.84769539078155, 104.23847695390782, 104.62925851703406, 105.02004008016033, 105.41082164328657, 105.80160320641284, 106.19238476953907, 106.58316633266533, 106.97394789579158, 107.36472945891784, 107.75551102204409, 108.14629258517034, 108.5370741482966, 108.92785571142284, 109.3186372745491, 109.70941883767534, 110.10020040080161, 110.49098196392785, 110.88176352705412, 111.27254509018036, 111.66332665330661, 112.05410821643287, 112.44488977955912, 112.83567134268537, 113.22645290581163, 113.61723446893788, 114.00801603206412, 114.39879759519039, 114.78957915831663, 115.1803607214429, 115.57114228456913, 115.96192384769539, 116.35270541082164, 116.7434869739479, 117.13426853707415, 117.5250501002004, 117.91583166332666, 118.3066132264529, 118.69739478957916, 119.08817635270542, 119.47895791583166, 119.86973947895791, 120.26052104208416, 120.65130260521042, 121.04208416833667, 121.43286573146293, 121.82364729458918, 122.21442885771543, 122.60521042084169, 122.99599198396794, 123.3867735470942, 123.77755511022045, 124.16833667334669, 124.55911823647294, 124.9498997995992, 125.34068136272545, 125.7314629258517, 126.12224448897796, 126.51302605210421, 126.90380761523046, 127.29458917835672, 127.68537074148297, 128.07615230460922, 128.46693386773546, 128.85771543086173, 129.24849699398797, 129.6392785571142, 130.03006012024048, 130.42084168336675, 130.81162324649299, 131.20240480961922, 131.5931863727455, 131.98396793587176, 132.374749498998, 132.76553106212424, 133.1563126252505, 133.54709418837675, 133.937875751503, 134.32865731462925, 134.71943887775552, 135.11022044088176, 135.501002004008, 135.89178356713427, 136.28256513026054, 136.67334669338678, 137.06412825651302, 137.45490981963928, 137.84569138276555, 138.23647294589176, 138.62725450901803, 139.0180360721443, 139.40881763527054, 139.79959919839678, 140.19038076152304, 140.5811623246493, 140.97194388777555, 141.3627254509018, 141.75350701402806, 142.14428857715433, 142.53507014028057, 142.9258517034068, 143.31663326653307, 143.7074148296593, 144.09819639278555, 144.48897795591182, 144.8797595190381, 145.27054108216433, 145.66132264529057, 146.05210420841684, 146.4428857715431, 146.83366733466934, 147.22444889779558, 147.61523046092185, 148.0060120240481, 148.39679358717433, 148.7875751503006, 149.17835671342687, 149.5691382765531, 149.95991983967934, 150.3507014028056, 150.74148296593188, 151.13226452905812, 151.52304609218436, 151.91382765531063, 152.3046092184369, 152.6953907815631, 153.08617234468937, 153.47695390781564, 153.86773547094188, 154.25851703406812, 154.6492985971944, 155.04008016032066, 155.4308617234469, 155.82164328657313, 156.2124248496994, 156.60320641282567, 156.9939879759519, 157.38476953907815, 157.77555110220442, 158.16633266533066, 158.5571142284569, 158.94789579158316, 159.33867735470943, 159.72945891783567, 160.1202404809619, 160.51102204408818, 160.90180360721445, 161.2925851703407, 161.68336673346693, 162.0741482965932, 162.46492985971943, 162.85571142284567, 163.24649298597194, 163.6372745490982, 164.02805611222445, 164.4188376753507, 164.80961923847696, 165.20040080160322, 165.59118236472946, 165.9819639278557, 166.37274549098197, 166.76352705410824, 167.15430861723445, 167.54509018036072, 167.93587174348698, 168.32665330661322, 168.71743486973946, 169.10821643286573, 169.498997995992, 169.88977955911824, 170.28056112224448, 170.67134268537075, 171.062124248497, 171.45290581162325, 171.8436873747495, 172.23446893787576, 172.625250501002, 173.01603206412824, 173.4068136272545, 173.79759519038078, 174.18837675350701, 174.57915831663325, 174.96993987975952, 175.3607214428858, 175.75150300601203, 176.14228456913827, 176.53306613226454, 176.92384769539078, 177.31462925851702, 177.70541082164328, 178.09619238476955, 178.4869739478958, 178.87775551102203, 179.2685370741483, 179.65931863727457, 180.0501002004008, 180.44088176352705, 180.8316633266533, 181.22244488977955, 181.6132264529058, 182.00400801603206, 182.39478957915833, 182.78557114228457, 183.17635270541084, 183.56713426853707, 183.9579158316633, 184.34869739478958, 184.73947895791582, 185.1302605210421, 185.52104208416833, 185.9118236472946, 186.30260521042084, 186.6933867735471, 187.08416833667334, 187.4749498997996, 187.86573146292585, 188.2565130260521, 188.64729458917836, 189.0380761523046, 189.42885771543087, 189.8196392785571, 190.21042084168337, 190.6012024048096, 190.99198396793588, 191.38276553106212, 191.7735470941884, 192.16432865731463, 192.5551102204409, 192.94589178356713, 193.33667334669337, 193.72745490981964, 194.11823647294588, 194.50901803607215, 194.8997995991984, 195.29058116232466, 195.6813627254509, 196.07214428857716, 196.4629258517034, 196.85370741482967, 197.2444889779559, 197.63527054108218, 198.02605210420842, 198.41683366733466, 198.80761523046093, 199.19839679358716, 199.58917835671343, 199.97995991983967, 200.37074148296594, 200.76152304609218, 201.15230460921845, 201.5430861723447, 201.93386773547095, 202.3246492985972, 202.71543086172343, 203.1062124248497, 203.49699398797594, 203.8877755511022, 204.27855711422845, 204.66933867735472, 205.06012024048096, 205.45090180360722, 205.84168336673346, 206.23246492985973, 206.62324649298597, 207.01402805611224, 207.40480961923848, 207.79559118236472, 208.18637274549098, 208.57715430861722, 208.9679358717435, 209.35871743486973, 209.749498997996, 210.14028056112224, 210.5310621242485, 210.92184368737475, 211.31262525050101, 211.70340681362725, 212.0941883767535, 212.48496993987976, 212.875751503006, 213.26653306613227, 213.6573146292585, 214.04809619238478, 214.43887775551102, 214.82965931863728, 215.22044088176352, 215.6112224448898, 216.00200400801603, 216.3927855711423, 216.78356713426854, 217.17434869739478, 217.56513026052104, 217.95591182364728, 218.34669338677355, 218.7374749498998, 219.12825651302606, 219.5190380761523, 219.90981963927857, 220.3006012024048, 220.69138276553107, 221.0821643286573, 221.47294589178355, 221.86372745490982, 222.25450901803606, 222.64529058116233, 223.03607214428857, 223.42685370741484, 223.81763527054107, 224.20841683366734, 224.59919839679358, 224.98997995991985, 225.3807615230461, 225.77154308617236, 226.1623246492986, 226.55310621242484, 226.9438877755511, 227.33466933867734, 227.7254509018036, 228.11623246492985, 228.50701402805612, 228.89779559118236, 229.28857715430863, 229.67935871743487, 230.07014028056113, 230.46092184368737, 230.85170340681364, 231.24248496993988, 231.63326653306612, 232.0240480961924, 232.41482965931863, 232.8056112224449, 233.19639278557113, 233.5871743486974, 233.97795591182364, 234.3687374749499, 234.75951903807615, 235.15030060120242, 235.54108216432866, 235.9318637274549, 236.32264529058116, 236.7134268537074, 237.10420841683367, 237.4949899799599, 237.88577154308618, 238.27655310621242, 238.6673346693387, 239.05811623246493, 239.4488977955912, 239.83967935871743, 240.2304609218437, 240.62124248496994, 241.01202404809618, 241.40280561122245, 241.7935871743487, 242.18436873747495, 242.5751503006012, 242.96593186372746, 243.3567134268537, 243.74749498997997, 244.1382765531062, 244.52905811623248, 244.91983967935872, 245.31062124248496, 245.70140280561122, 246.09218436873746, 246.48296593186373, 246.87374749498997, 247.26452905811624, 247.65531062124248, 248.04609218436875, 248.43687374749499, 248.82765531062125, 249.2184368737475, 249.60921843687376, 250.0])\n", " .range(['#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff']);\n", " \n", "\n", - " color_map_e2af22c800c628180daa7616675a3af3.x = d3.scale.linear()\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.x = d3.scale.linear()\n", " .domain([55.0, 250.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_e2af22c800c628180daa7616675a3af3.legend = L.control({position: 'topright'});\n", - " color_map_e2af22c800c628180daa7616675a3af3.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_e2af22c800c628180daa7616675a3af3.legend.addTo(map_eceb6f59e73e341a89d569bbee148bda);\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.legend = L.control({position: 'topright'});\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.legend.addTo(map_9b710bd14a055910770b67cb1760cfd4);\n", "\n", - " color_map_e2af22c800c628180daa7616675a3af3.xAxis = d3.svg.axis()\n", - " .scale(color_map_e2af22c800c628180daa7616675a3af3.x)\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.xAxis = d3.svg.axis()\n", + " .scale(color_map_e7d73edb1f8ba9eaae1416fb486b01ed.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([55.0, '', 94.0, '', 133.0, '', 172.0, '', 211.0, '', 250.0, '']);\n", "\n", - " color_map_e2af22c800c628180daa7616675a3af3.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_e2af22c800c628180daa7616675a3af3.g = color_map_e2af22c800c628180daa7616675a3af3.svg.append("g")\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.g = color_map_e7d73edb1f8ba9eaae1416fb486b01ed.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_e2af22c800c628180daa7616675a3af3.g.selectAll("rect")\n", - " .data(color_map_e2af22c800c628180daa7616675a3af3.color.range().map(function(d, i) {\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.g.selectAll("rect")\n", + " .data(color_map_e7d73edb1f8ba9eaae1416fb486b01ed.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_e2af22c800c628180daa7616675a3af3.x(color_map_e2af22c800c628180daa7616675a3af3.color.domain()[i - 1]) : color_map_e2af22c800c628180daa7616675a3af3.x.range()[0],\n", - " x1: i < color_map_e2af22c800c628180daa7616675a3af3.color.domain().length ? color_map_e2af22c800c628180daa7616675a3af3.x(color_map_e2af22c800c628180daa7616675a3af3.color.domain()[i]) : color_map_e2af22c800c628180daa7616675a3af3.x.range()[1],\n", + " x0: i ? color_map_e7d73edb1f8ba9eaae1416fb486b01ed.x(color_map_e7d73edb1f8ba9eaae1416fb486b01ed.color.domain()[i - 1]) : color_map_e7d73edb1f8ba9eaae1416fb486b01ed.x.range()[0],\n", + " x1: i < color_map_e7d73edb1f8ba9eaae1416fb486b01ed.color.domain().length ? color_map_e7d73edb1f8ba9eaae1416fb486b01ed.x(color_map_e7d73edb1f8ba9eaae1416fb486b01ed.color.domain()[i]) : color_map_e7d73edb1f8ba9eaae1416fb486b01ed.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -8804,7 +8804,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_e2af22c800c628180daa7616675a3af3.g.call(color_map_e2af22c800c628180daa7616675a3af3.xAxis).append("text")\n", + " color_map_e7d73edb1f8ba9eaae1416fb486b01ed.g.call(color_map_e7d73edb1f8ba9eaae1416fb486b01ed.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -8813,7 +8813,7 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 23, @@ -8848,19 +8848,3315 @@ ] }, { - "cell_type": "markdown", - "id": "6d9e15cb-bd9b-4439-8df3-83347673eebf", + "cell_type": "code", + "execution_count": null, + "id": "bb6f0494", "metadata": {}, - "source": [ - "# Clean Up (Optional)\n", - "\n", - "\n", - "Remove any **core** files that were created if the kernel crashed." - ] + "outputs": [], + "source": [] }, { "cell_type": "code", "execution_count": 24, + "id": "e1a973b8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"ps-greenfield-pre-tornadoes-2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa before the tornado strike.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 3\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 2\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 2500\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " resampling\n", + " \"bilinear\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " datetime_range\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Pre)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.57407952376526\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.20937000457795\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.17411959542935\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.432508029615924\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-20T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-20T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-20T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-20T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# TODO: Change collection_ID and date\n", + "collection_id = \"ps-greenfield-pre-tornadoes-2024\"\n", + "date = \"2024-05-20\"\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "\n", + "collection" + ] + }, + { + "cell_type": "markdown", + "id": "5pvjwifnzz6", + "metadata": {}, + "source": [ + "# Example: PlanetScope Greenfield Pre-Tornado and Post-Tornado Imagery\n", + "\n", + "High-resolution satellite imagery from PlanetScope showing Greenfield, Iowa before the tornado impact and afterwards." + ] + }, + { + "cell_type": "markdown", + "id": "12f34dc7", + "metadata": {}, + "source": [ + "## Pre-Tornado" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "g0zklfvn8i", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&bidx=3&bidx=2&bidx=1&rescale=0%2C2500&resampling=bilinear'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.57407952376526, 41.20937000457795, -94.17411959542935, 41.432508029615924], 'center': [-94.37409955959731, 41.32093901709693, 0]}\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"ps-greenfield-pre-tornadoes-2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa before the tornado strike.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 3\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 2\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 2500\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " resampling\n", + " \"bilinear\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " datetime_range\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Pre)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.57407952376526\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.20937000457795\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.17411959542935\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.432508029615924\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-20T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-20T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-20T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-20T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "date_pre = \"2024-05-20\" # Select date one day before tornado \n", + "collection_id_pre = \"ps-greenfield-pre-tornadoes-2024\"\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "results_pre = client_STAC.search(collections=[collection_id_pre], datetime=date_pre)\n", + "items_pre = list(results_pre.items())\n", + "item_pre = items_pre[0]\n", + "collection_pre = item_pre.get_collection()\n", + "\n", + "dashboard_render_pre = collection_pre.extra_fields[\"renders\"][\"dashboard\"]\n", + "assets_pre = dashboard_render_pre[\"assets\"][0]\n", + "((vmin_pre, vmax_pre),) = dashboard_render_pre[\"rescale\"]\n", + "bidx_pre = dashboard_render_pre.get(\"bidx\", [3, 2, 1])\n", + "\n", + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "response_pre = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id_pre}\"\n", + " f\"/items/{item_pre.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets_pre}\"\n", + " f\"&bidx={bidx_pre[0]}&bidx={bidx_pre[1]}&bidx={bidx_pre[2]}\"\n", + " f\"&rescale={vmin_pre},{vmax_pre}\"\n", + " f\"&resampling=bilinear\"\n", + ")\n", + "response_pre.raise_for_status()\n", + "tiles_pre = response_pre.json()\n", + "print(tiles_pre)\n", + "\n", + "collection_pre" + ] + }, + { + "cell_type": "markdown", + "id": "d9lwlj2qqxr", + "metadata": {}, + "source": [ + "## Post-Tornado" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "gc0d3a4crpj", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&bidx=1&bidx=2&bidx=3&rescale=0%2C255&resampling=bilinear'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.78355154698768, 41.12696496878226, -94.3507332170628, 41.464387283686655], 'center': [-94.56714238202524, 41.295676126234454, 0]}\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"ps-greenfield-post-tornadoes-2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa after the tornado strike.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 2\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 3\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 255\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " resampling\n", + " \"bilinear\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " datetime_range\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Post)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.78355154698768\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.12696496878226\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.3507332170628\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.464387283686655\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-22T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-22T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-22T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-22T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "collection_id_post = \"ps-greenfield-post-tornadoes-2024\"\n", + "date_post = \"2024-05-22\" # Select date one day after tornado \n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "results_post = client_STAC.search(collections=[collection_id_post], datetime=date_post)\n", + "\n", + "items_post = list(results_post.items())\n", + "assert len(items_post) != 0, \"No items found\"\n", + "item_post = items_post[0]\n", + "collection_post = item_post.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render_post = collection_post.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets_post = dashboard_render_post[\"assets\"][0]\n", + "((vmin_post, vmax_post),) = dashboard_render_post[\"rescale\"]\n", + "\n", + "# Special handling for RGB bands - post tornado uses different band order (1,2,3)\n", + "bidx_post = dashboard_render_post.get(\"bidx\", [1, 2, 3]) # RGB band order for post\n", + "\n", + "\n", + "# ── VEDA Tile Request for Post-Tornado ─────────────────────────────────────────────────────────────────────\n", + "\n", + "response_post = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id_post}\"\n", + " f\"/items/{item_post.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets_post}\"\n", + " f\"&bidx={bidx_post[0]}&bidx={bidx_post[1]}&bidx={bidx_post[2]}\" # RGB bands (1,2,3 for post)\n", + " f\"&rescale={vmin_post},{vmax_post}\"\n", + " f\"&resampling=bilinear\"\n", + ")\n", + "\n", + "response_post.raise_for_status()\n", + "\n", + "tiles_post = response_post.json()\n", + "print(tiles_post)\n", + "\n", + "collection_post\n" + ] + }, + { + "cell_type": "markdown", + "id": "1lk41qvga25", + "metadata": {}, + "source": [ + "## Side-by-Side Comparison: Before and After the Tornado" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "9801hkznaop", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Create side-by-side comparison using the create_side_by_side_map function\n", + "m_comparison = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", + " tiles_url_left=tiles_pre[\"tiles\"][0], # Pre-tornado (May 20)\n", + " tiles_url_right=tiles_post[\"tiles\"][0], # Post-tornado (May 22)\n", + " center_coords=[41.3036, -94.4569], # Greenfield, Iowa\n", + " zoom_level=15,\n", + " title=\"PlanetScope: Greenfield, IA β€” Before & After EF-4 Tornado (May 21, 2024)\",\n", + " label_left=\"← Pre-Tornado (May 20)\",\n", + " label_right=\"Post-Tornado (May 23) β†’\",\n", + " layer_name_left=\"PlanetScope Pre-Tornado\",\n", + " layer_name_right=\"PlanetScope Post-Tornado\",\n", + " opacity=1.0, # Full opacity for satellite imagery\n", + " basemap_style='cartodb-positron', # Light basemap\n", + " height=\"800px\",\n", + " width=\"100%\"\n", + ")\n", + "\n", + "# Display the comparison map\n", + "m_comparison" + ] + }, + { + "cell_type": "markdown", + "id": "6d9e15cb-bd9b-4439-8df3-83347673eebf", + "metadata": {}, + "source": [ + "# Clean Up (Optional)\n", + "\n", + "\n", + "Remove any **core** files that were created if the kernel crashed." + ] + }, + { + "cell_type": "code", + "execution_count": 28, "id": "7bd64da5-fdb4-44d8-a0dc-3ed4b1160a12", "metadata": {}, "outputs": [], From cf0e546f9e9e68e4a51e842971d4b042b0cac087 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 15 Aug 2025 18:00:44 -0500 Subject: [PATCH 07/28] update date --- .../stories/tornadoes_2024_notebook.ipynb | 11242 +--------------- 1 file changed, 51 insertions(+), 11191 deletions(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index f0954c21..ad9d4514 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -67,7 +67,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "id": "fbad9700-ce5d-4210-9c58-f9204917b7ab", "metadata": {}, "outputs": [], @@ -87,21 +87,10 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "id": "1aafe340", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "import importlib\n", "importlib.reload(putils)" @@ -109,7 +98,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "8fc9234c-975b-485d-bfb3-d9100ff3b12d", "metadata": {}, "outputs": [], @@ -172,869 +161,10 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "id": "f1ef497a-4fa7-499c-8237-21f4cad1d45b", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"tornadoes-2024-paths\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Official NWS surveyed tornado tracks from March to May of 2024. Only the centerline of the tornado paths, classified by maximum EF rating.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-paths/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-paths/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-paths\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " nodata\n", - " 255\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " colormap_name\n", - " \"tornado_ef_scale\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"NWS Tornado Tracks (Paths) from MAM 2024\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -103.501720443\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 18.467731627\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -66.701720443\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 46.592731627\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-05-31T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-05-31T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-05-31T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-05-31T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-paths\"\n", @@ -1061,18 +191,10 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "id": "b3bafa71-607c-49cc-9e5f-8f3d2f882410", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&colormap_name=tornado_ef_scale'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-103.501720443, 18.467731627, -66.701720443, 46.592731627], 'center': [-85.101720443, 32.530231627, 0]}\n" - ] - } - ], + "outputs": [], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────\n", "colormap_name = \"tornado_ef_scale\"\n", @@ -1101,26 +223,10 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "id": "9d17e195", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'openstreetmap': 'OpenStreetMap standard tiles',\n", - " 'cartodb-positron': 'Light gray CartoDB basemap (subtle, good for data visualization)',\n", - " 'cartodb-dark': 'Dark CartoDB basemap (good for bright data)',\n", - " 'esri-satellite': 'ESRI satellite imagery without labels',\n", - " 'esri-satellite-labels': 'ESRI satellite imagery with place labels overlay',\n", - " None: 'No basemap (transparent background)'}" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# First we will present the different basemaps that we have access to underlay beneath our tile requests\n", "# For the first map, we will utilize the 'esri-satellite-labels' map layer\n", @@ -1129,297 +235,10 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "id": "9af1c710-0423-4d3e-9c93-4fff13d1dab5", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Define EF scale categories with specific colors to replicate predefined colorscale in VEDA backend. \n", "# Colors have been predifined in veda-backend https://github.com/NASA-IMPACT/veda-backend/tree/develop/raster_api/runtime/src/cmap_data#tornadoes-colormap\n", @@ -1483,889 +302,10 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "965db310-ee99-4af3-96a8-00e63854351d", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"tornadoes-2024-polygons\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Official NWS surveyed tornado tracks from March to May of 2024\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " nodata\n", - " 255\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " colormap_name\n", - " \"tornado_ef_scale\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"NWS Tornado Tracks from MAM 2024\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -104.72280125674247\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 27.9971496536041\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -71.9717534735214\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 46.847529413454325\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-05-31T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-05-31T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-05-31T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-05-31T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-polygons\"\n", @@ -2392,31 +332,10 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "id": "bdba0ec8-aced-4a16-a5ad-e261aa586cfd", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'tilejson': '2.2.0',\n", - " 'version': '1.0.0',\n", - " 'scheme': 'xyz',\n", - " 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&colormap_name=tornado_ef_scale'],\n", - " 'minzoom': 0,\n", - " 'maxzoom': 24,\n", - " 'bounds': [-104.72280125674247,\n", - " 27.9971496536041,\n", - " -71.9717534735214,\n", - " 46.847529413454325],\n", - " 'center': [-88.34727736513193, 37.42233953352921, 0]}" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────\n", "# Use the same tornado_ef_scale colormap for polygons\n", @@ -2439,297 +358,10 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "f6183652-36ca-4d4f-af4e-41070e813092", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Create the base map using the unified function (ef_categories already defined above)\n", "# NOTE: Not passing rescale for discrete data\n", @@ -2776,942 +408,10 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "id": "d55ccd28-c8ba-47cf-bfd3-03c3a8cd5beb", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"lakeview-nightlights-tornadoes-2024\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Black Marble night lights imagery of tornado damage at Lakeview, Ohio in the spring 2024 tornado season.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " nodata\n", - " -999\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -150\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 150\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " colormap_name\n", - " \"bwr\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " datetime_range\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"Black Marble Night Lights (Lakeview OH Tornado Damage; Difference)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -84.2954\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 40.20127368220017\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -83.57612536287245\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 40.69122631779985\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-03-14T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-03-14T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-03-14T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-03-14T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"lakeview-nightlights-tornadoes-2024\"\n", @@ -3737,18 +437,10 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "id": "6b3f9709-09bc-43ef-b3fd-d89f3c0cd5e9", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=bwr&rescale=-150%2C150'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-84.2954, 40.20127368220017, -83.57612536287245, 40.69122631779985], 'center': [-83.93576268143622, 40.446250000000006, 0]}\n" - ] - } - ], + "outputs": [], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", "#colormap_name = \"tornado_ef_scale\"\n", @@ -3771,241 +463,10 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "id": "f283977b-e862-4f2d-9032-414d974a35b4", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Visualization of Indian Lake, Ohio showing large decreases in artificial light emissions after an EF-3 tornado on March 14, 2024.\n" - ] - }, - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Use the new plot_folium_from_VEDA_STAC function\n", "m = putils.plot_folium_from_VEDA_STAC(\n", @@ -4053,7 +514,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "id": "7213b9f2-8444-462b-a994-3e8cbb6beed2", "metadata": {}, "outputs": [], @@ -4113,933 +574,10 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "id": "22a738e8", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"tornadoes-2024-dow-refl-harlan\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Horizontal Reflectivity values (dBZ) collected by DOW7 from the Harlan, Iowa EF-3 tornado on April 26, 2024 at 23:08:12.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " nodata\n", - " -32768\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -10\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 50\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " colormap_name\n", - " \"turbo\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"DOW7 Reflectivity (Harlan, IA)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -95.42\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 41.62\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -95.3\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 41.72\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-04-26T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-04-26T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-04-26T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-04-26T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "#View DOW7 reflectivity collection\n", "collection_refl" @@ -5047,933 +585,10 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": null, "id": "618ba9da", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"tornadoes-2024-dow-v-harlan\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Velocities (m/s) of the EF-3 Harlan, IA tornado on April 26, 2024 collected by DOW7. Scan taken at 23:08:12..\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " nodata\n", - " -32768\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -75\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 75\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " colormap_name\n", - " \"seismic\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"DOW7 Velocity (Ground; Harlan, IA)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -95.42\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 41.62\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -95.3\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 41.72\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-04-26T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-04-26T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-04-26T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-04-26T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 16, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "#View DOW7 velocity collection\n", "collection_vel" @@ -5981,289 +596,10 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": null, "id": "f01b3d85", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Interactive side-by-side comparison of DOW7 reflectivity and velocity data.\n", - "Drag the vertical slider to reveal more of either dataset.\n", - "\n" - ] - }, - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Use the new plot_folium_SidebySide_layer_from_VEDA_STAC function from plotutils\n", "m = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", @@ -6302,933 +638,10 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": null, "id": "2461b25d-de5d-42b1-b30d-464185144021", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"tornadoes-2024-dow-rhohv-greenfield\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Correlation Coefficient (rhoHV) collected by DOW7 from the Greenfield, Iowa EF-4 tornado on May 21, 2024 at 20:41:08.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " nodata\n", - " 32768\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " 0\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 1\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " colormap_name\n", - " \"turbo\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"DOW7 Correlation Coefficient (Greenfield, IA)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -94.5\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 41.275\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -94.4\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 41.325\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-05-21T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-05-21T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-05-21T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-05-21T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-dow-rhohv-greenfield\"\n", @@ -7254,18 +667,10 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": null, "id": "f76739f7-236f-4b6f-be79-8772248e1f92", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=0%2C1'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.5, 41.275, -94.4, 41.325], 'center': [-94.45, 41.3, 0]}\n" - ] - } - ], + "outputs": [], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", "colormap_name = \"turbo\"\n", @@ -7287,262 +692,10 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": null, "id": "9c112371-86d5-4097-8c73-d9b510560cda", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\n" - ] - }, - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 20, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Use the new plot_folium_from_VEDA_STAC function\n", "m = putils.plot_folium_from_VEDA_STAC(\n", @@ -7580,933 +733,10 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": null, "id": "efb13664-1597-478a-b8e5-fac20e6ac481", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"tornadoes-2024-dow-vmax-greenfield\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Derived maximum velocities of the EF-4 Greenfield, IA tornado on May 21, 2024 collected by DOW7. Converted from m/s to mph.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " nodata\n", - " -999\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " 55\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 250\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " colormap_name\n", - " \"gist_ncar\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"Derived Maximum Velocity (Greenfield, IA; DOW7)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -94.4784\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 41.29080000000008\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -94.416\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 41.31980000000008\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-05-21T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-05-21T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-05-21T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-05-21T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-dow-vmax-greenfield\"\n", @@ -8532,18 +762,10 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": null, "id": "14d08573-78ea-45bf-baf0-58cddf840401", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=gist_ncar&rescale=55%2C250'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.4784, 41.29080000000008, -94.416, 41.31980000000008], 'center': [-94.4472, 41.30530000000008, 0]}\n" - ] - } - ], + "outputs": [], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", "colormap_name = \"gist_ncar\"\n", @@ -8565,262 +787,10 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": null, "id": "b062836d-83f6-414d-91d2-9255e0b46a3c", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\n" - ] - }, - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Use the new plot_folium_from_VEDA_STAC function\n", "m = putils.plot_folium_from_VEDA_STAC(\n", @@ -8857,959 +827,10 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": null, "id": "e1a973b8", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"ps-greenfield-pre-tornadoes-2024\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa before the tornado strike.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 3 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 3\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " 2\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 2\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " 0\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 2500\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " resampling\n", - " \"bilinear\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " datetime_range\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Pre)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -94.57407952376526\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 41.20937000457795\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -94.17411959542935\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 41.432508029615924\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-05-20T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-05-20T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-05-20T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-05-20T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 24, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"ps-greenfield-pre-tornadoes-2024\"\n", @@ -9856,963 +877,7 @@ "execution_count": null, "id": "g0zklfvn8i", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&bidx=3&bidx=2&bidx=1&rescale=0%2C2500&resampling=bilinear'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.57407952376526, 41.20937000457795, -94.17411959542935, 41.432508029615924], 'center': [-94.37409955959731, 41.32093901709693, 0]}\n" - ] - }, - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"ps-greenfield-pre-tornadoes-2024\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa before the tornado strike.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 3 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 3\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " 2\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 2\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " 0\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 2500\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " resampling\n", - " \"bilinear\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " datetime_range\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Pre)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -94.57407952376526\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 41.20937000457795\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -94.17411959542935\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 41.432508029615924\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-05-20T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-05-20T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-05-20T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-05-20T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 25, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "date_pre = \"2024-05-20\" # Select date one day before tornado \n", "collection_id_pre = \"ps-greenfield-pre-tornadoes-2024\"\n", @@ -10859,963 +924,7 @@ "execution_count": null, "id": "gc0d3a4crpj", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&bidx=1&bidx=2&bidx=3&rescale=0%2C255&resampling=bilinear'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.78355154698768, 41.12696496878226, -94.3507332170628, 41.464387283686655], 'center': [-94.56714238202524, 41.295676126234454, 0]}\n" - ] - }, - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"ps-greenfield-post-tornadoes-2024\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa after the tornado strike.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 3 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " 2\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 2\n", - " 3\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " 0\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 255\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " resampling\n", - " \"bilinear\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " datetime_range\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Post)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -94.78355154698768\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 41.12696496878226\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -94.3507332170628\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 41.464387283686655\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-05-22T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-05-22T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-05-22T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-05-22T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 26, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "collection_id_post = \"ps-greenfield-post-tornadoes-2024\"\n", "date_post = \"2024-05-22\" # Select date one day after tornado \n", @@ -11868,259 +977,10 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": null, "id": "9801hkznaop", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 27, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Create side-by-side comparison using the create_side_by_side_map function\n", "m_comparison = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", @@ -12130,7 +990,7 @@ " zoom_level=15,\n", " title=\"PlanetScope: Greenfield, IA β€” Before & After EF-4 Tornado (May 21, 2024)\",\n", " label_left=\"← Pre-Tornado (May 20)\",\n", - " label_right=\"Post-Tornado (May 23) β†’\",\n", + " label_right=\"Post-Tornado (May 22) β†’\",\n", " layer_name_left=\"PlanetScope Pre-Tornado\",\n", " layer_name_right=\"PlanetScope Post-Tornado\",\n", " opacity=1.0, # Full opacity for satellite imagery\n", @@ -12156,7 +1016,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": null, "id": "7bd64da5-fdb4-44d8-a0dc-3ed4b1160a12", "metadata": {}, "outputs": [], From 575151a373eafc79637b0d4895439b66eb7d050f Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 15 Aug 2025 18:05:44 -0500 Subject: [PATCH 08/28] update notebook --- .../stories/tornadoes_2024_notebook.ipynb | 11244 +++++++++++++++- 1 file changed, 11192 insertions(+), 52 deletions(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index ad9d4514..6f9037aa 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -67,7 +67,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "id": "fbad9700-ce5d-4210-9c58-f9204917b7ab", "metadata": {}, "outputs": [], @@ -87,10 +87,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "id": "1aafe340", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "import importlib\n", "importlib.reload(putils)" @@ -98,7 +109,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "id": "8fc9234c-975b-485d-bfb3-d9100ff3b12d", "metadata": {}, "outputs": [], @@ -161,10 +172,869 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "id": "f1ef497a-4fa7-499c-8237-21f4cad1d45b", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-paths\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Official NWS surveyed tornado tracks from March to May of 2024. Only the centerline of the tornado paths, classified by maximum EF rating.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-paths/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-paths/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-paths\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " 255\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"tornado_ef_scale\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"NWS Tornado Tracks (Paths) from MAM 2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -103.501720443\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 18.467731627\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -66.701720443\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 46.592731627\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-31T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-31T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-31T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-31T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-paths\"\n", @@ -191,10 +1061,18 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "id": "b3bafa71-607c-49cc-9e5f-8f3d2f882410", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&colormap_name=tornado_ef_scale'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-103.501720443, 18.467731627, -66.701720443, 46.592731627], 'center': [-85.101720443, 32.530231627, 0]}\n" + ] + } + ], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────\n", "colormap_name = \"tornado_ef_scale\"\n", @@ -223,10 +1101,26 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "id": "9d17e195", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'openstreetmap': 'OpenStreetMap standard tiles',\n", + " 'cartodb-positron': 'Light gray CartoDB basemap (subtle, good for data visualization)',\n", + " 'cartodb-dark': 'Dark CartoDB basemap (good for bright data)',\n", + " 'esri-satellite': 'ESRI satellite imagery without labels',\n", + " 'esri-satellite-labels': 'ESRI satellite imagery with place labels overlay',\n", + " None: 'No basemap (transparent background)'}" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# First we will present the different basemaps that we have access to underlay beneath our tile requests\n", "# For the first map, we will utilize the 'esri-satellite-labels' map layer\n", @@ -235,10 +1129,297 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "id": "9af1c710-0423-4d3e-9c93-4fff13d1dab5", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Define EF scale categories with specific colors to replicate predefined colorscale in VEDA backend. \n", "# Colors have been predifined in veda-backend https://github.com/NASA-IMPACT/veda-backend/tree/develop/raster_api/runtime/src/cmap_data#tornadoes-colormap\n", @@ -302,10 +1483,889 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "id": "965db310-ee99-4af3-96a8-00e63854351d", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-polygons\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Official NWS surveyed tornado tracks from March to May of 2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-polygons\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " 255\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"tornado_ef_scale\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"NWS Tornado Tracks from MAM 2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -104.72280125674247\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 27.9971496536041\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -71.9717534735214\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 46.847529413454325\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-31T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-31T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-31T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-31T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-polygons\"\n", @@ -332,10 +2392,31 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "id": "bdba0ec8-aced-4a16-a5ad-e261aa586cfd", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'tilejson': '2.2.0',\n", + " 'version': '1.0.0',\n", + " 'scheme': 'xyz',\n", + " 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&colormap_name=tornado_ef_scale'],\n", + " 'minzoom': 0,\n", + " 'maxzoom': 24,\n", + " 'bounds': [-104.72280125674247,\n", + " 27.9971496536041,\n", + " -71.9717534735214,\n", + " 46.847529413454325],\n", + " 'center': [-88.34727736513193, 37.42233953352921, 0]}" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────\n", "# Use the same tornado_ef_scale colormap for polygons\n", @@ -358,10 +2439,297 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "id": "f6183652-36ca-4d4f-af4e-41070e813092", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Create the base map using the unified function (ef_categories already defined above)\n", "# NOTE: Not passing rescale for discrete data\n", @@ -408,10 +2776,942 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "id": "d55ccd28-c8ba-47cf-bfd3-03c3a8cd5beb", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"lakeview-nightlights-tornadoes-2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Black Marble night lights imagery of tornado damage at Lakeview, Ohio in the spring 2024 tornado season.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/lakeview-nightlights-tornadoes-2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " -999\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -150\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 150\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"bwr\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " datetime_range\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Black Marble Night Lights (Lakeview OH Tornado Damage; Difference)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -84.2954\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 40.20127368220017\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -83.57612536287245\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 40.69122631779985\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-03-14T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-03-14T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-03-14T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-03-14T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"lakeview-nightlights-tornadoes-2024\"\n", @@ -437,10 +3737,18 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "id": "6b3f9709-09bc-43ef-b3fd-d89f3c0cd5e9", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=bwr&rescale=-150%2C150'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-84.2954, 40.20127368220017, -83.57612536287245, 40.69122631779985], 'center': [-83.93576268143622, 40.446250000000006, 0]}\n" + ] + } + ], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", "#colormap_name = \"tornado_ef_scale\"\n", @@ -463,10 +3771,241 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, "id": "f283977b-e862-4f2d-9032-414d974a35b4", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Visualization of Indian Lake, Ohio showing large decreases in artificial light emissions after an EF-3 tornado on March 14, 2024.\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Use the new plot_folium_from_VEDA_STAC function\n", "m = putils.plot_folium_from_VEDA_STAC(\n", @@ -514,7 +4053,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "id": "7213b9f2-8444-462b-a994-3e8cbb6beed2", "metadata": {}, "outputs": [], @@ -574,10 +4113,933 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "id": "22a738e8", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-dow-refl-harlan\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Horizontal Reflectivity values (dBZ) collected by DOW7 from the Harlan, Iowa EF-3 tornado on April 26, 2024 at 23:08:12.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-refl-harlan\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " -32768\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 50\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"turbo\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"DOW7 Reflectivity (Harlan, IA)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -95.42\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.62\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -95.3\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.72\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-04-26T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-04-26T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-04-26T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-04-26T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "#View DOW7 reflectivity collection\n", "collection_refl" @@ -585,10 +5047,933 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 16, "id": "618ba9da", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-dow-v-harlan\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Velocities (m/s) of the EF-3 Harlan, IA tornado on April 26, 2024 collected by DOW7. Scan taken at 23:08:12..\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-v-harlan\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " -32768\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -75\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 75\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"seismic\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"DOW7 Velocity (Ground; Harlan, IA)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -95.42\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.62\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -95.3\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.72\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-04-26T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-04-26T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-04-26T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-04-26T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "#View DOW7 velocity collection\n", "collection_vel" @@ -596,10 +5981,289 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "id": "f01b3d85", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Interactive side-by-side comparison of DOW7 reflectivity and velocity data.\n", + "Drag the vertical slider to reveal more of either dataset.\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Use the new plot_folium_SidebySide_layer_from_VEDA_STAC function from plotutils\n", "m = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", @@ -638,10 +6302,933 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 18, "id": "2461b25d-de5d-42b1-b30d-464185144021", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-dow-rhohv-greenfield\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Correlation Coefficient (rhoHV) collected by DOW7 from the Greenfield, Iowa EF-4 tornado on May 21, 2024 at 20:41:08.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-rhohv-greenfield\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " 32768\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"turbo\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"DOW7 Correlation Coefficient (Greenfield, IA)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.5\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.275\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.4\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.325\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornadoes-2024-dow-background.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Ryan McGinnis](https://static.wikia.nocookie.net/stormchasers/images/1/1b/DOW.jpg/revision/latest?cb=20100115235828) (DOW6 parked in front of a tornadic mesocyclone in the Plains)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-dow-rhohv-greenfield\"\n", @@ -667,10 +7254,18 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 19, "id": "f76739f7-236f-4b6f-be79-8772248e1f92", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=turbo&rescale=0%2C1'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.5, 41.275, -94.4, 41.325], 'center': [-94.45, 41.3, 0]}\n" + ] + } + ], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", "colormap_name = \"turbo\"\n", @@ -692,10 +7287,262 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 20, "id": "9c112371-86d5-4097-8c73-d9b510560cda", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Use the new plot_folium_from_VEDA_STAC function\n", "m = putils.plot_folium_from_VEDA_STAC(\n", @@ -733,10 +7580,933 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 21, "id": "efb13664-1597-478a-b8e5-fac20e6ac481", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"tornadoes-2024-dow-vmax-greenfield\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Derived maximum velocities of the EF-4 Greenfield, IA tornado on May 21, 2024 collected by DOW7. Converted from m/s to mph.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " nodata\n", + " -999\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 55\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 250\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " colormap_name\n", + " \"gist_ncar\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Derived Maximum Velocity (Greenfield, IA; DOW7)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.4784\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.29080000000008\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.416\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.31980000000008\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-dow-vmax-greenfield\"\n", @@ -762,10 +8532,18 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 22, "id": "14d08573-78ea-45bf-baf0-58cddf840401", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=gist_ncar&rescale=55%2C250'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.4784, 41.29080000000008, -94.416, 41.31980000000008], 'center': [-94.4472, 41.30530000000008, 0]}\n" + ] + } + ], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", "colormap_name = \"gist_ncar\"\n", @@ -787,10 +8565,262 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 23, "id": "b062836d-83f6-414d-91d2-9255e0b46a3c", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\n" + ] + }, + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Use the new plot_folium_from_VEDA_STAC function\n", "m = putils.plot_folium_from_VEDA_STAC(\n", @@ -827,10 +8857,959 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 24, "id": "e1a973b8", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"ps-greenfield-pre-tornadoes-2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa before the tornado strike.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 3\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 2\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 2500\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " resampling\n", + " \"bilinear\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " datetime_range\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Pre)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.57407952376526\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.20937000457795\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.17411959542935\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.432508029615924\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-20T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-20T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-20T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-20T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# TODO: Change collection_ID and date\n", "collection_id = \"ps-greenfield-pre-tornadoes-2024\"\n", @@ -874,10 +9853,966 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 25, "id": "g0zklfvn8i", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&bidx=3&bidx=2&bidx=1&rescale=0%2C2500&resampling=bilinear'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.57407952376526, 41.20937000457795, -94.17411959542935, 41.432508029615924], 'center': [-94.37409955959731, 41.32093901709693, 0]}\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"ps-greenfield-pre-tornadoes-2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa before the tornado strike.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 3\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 2\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 2500\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " resampling\n", + " \"bilinear\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " datetime_range\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Pre)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.57407952376526\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.20937000457795\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.17411959542935\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.432508029615924\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-20T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-20T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-20T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-20T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "date_pre = \"2024-05-20\" # Select date one day before tornado \n", "collection_id_pre = \"ps-greenfield-pre-tornadoes-2024\"\n", @@ -921,10 +10856,966 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 26, "id": "gc0d3a4crpj", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&bidx=1&bidx=2&bidx=3&rescale=0%2C255&resampling=bilinear'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.78355154698768, 41.12696496878226, -94.3507332170628, 41.464387283686655], 'center': [-94.56714238202524, 41.295676126234454, 0]}\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"ps-greenfield-post-tornadoes-2024\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa after the tornado strike.\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://openveda.cloud/api/stac/collections/ps-greenfield-post-tornadoes-2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " renders\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " dashboard\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bidx[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 2\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 3\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"VEDA Dashboard Render Parameters\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " assets[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"cog_default\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " rescale[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 255\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " resampling\n", + " \"bilinear\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " item_assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " cog_default\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"layer\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Default COG Layer\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Cloud optimized default layer to display on map\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " datetime_range\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:is_periodic\n", + " True\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " dashboard:time_density\n", + " \"day\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " title\n", + " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Post)\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.78355154698768\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 41.12696496878226\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -94.3507332170628\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 41.464387283686655\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2024-05-22T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2024-05-22T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"CC0-1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " providers[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " name\n", + " \"NASA VEDA\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"host\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " url\n", + " \"https://www.earthdata.nasa.gov/dashboard/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " summaries\n", + "
      \n", + " \n", + " \n", + "
    • \n", + " datetime[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"2024-05-22T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " \"2024-05-22T00:00:00Z\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Photo by [Jonny Glessner](https://x.com/JonnyGlessner/status/1768424574855610777/photo/4) (Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "collection_id_post = \"ps-greenfield-post-tornadoes-2024\"\n", "date_post = \"2024-05-22\" # Select date one day after tornado \n", @@ -980,7 +11871,256 @@ "execution_count": null, "id": "9801hkznaop", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Create side-by-side comparison using the create_side_by_side_map function\n", "m_comparison = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", @@ -988,7 +12128,7 @@ " tiles_url_right=tiles_post[\"tiles\"][0], # Post-tornado (May 22)\n", " center_coords=[41.3036, -94.4569], # Greenfield, Iowa\n", " zoom_level=15,\n", - " title=\"PlanetScope: Greenfield, IA β€” Before & After EF-4 Tornado (May 21, 2024)\",\n", + " title=\"PlanetScope: Greenfield, IA\",\n", " label_left=\"← Pre-Tornado (May 20)\",\n", " label_right=\"Post-Tornado (May 22) β†’\",\n", " layer_name_left=\"PlanetScope Pre-Tornado\",\n", @@ -1016,7 +12156,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 28, "id": "7bd64da5-fdb4-44d8-a0dc-3ed4b1160a12", "metadata": {}, "outputs": [], From fd38b5c23230437c6d12eab5445fc065fd2b2206 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 15 Aug 2025 18:10:01 -0500 Subject: [PATCH 09/28] run to render images --- .../stories/tornadoes_2024_notebook.ipynb | 480 +++++++++--------- 1 file changed, 240 insertions(+), 240 deletions(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 6f9037aa..91866edb 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -67,7 +67,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 29, "id": "fbad9700-ce5d-4210-9c58-f9204917b7ab", "metadata": {}, "outputs": [], @@ -87,7 +87,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 30, "id": "1aafe340", "metadata": {}, "outputs": [ @@ -97,7 +97,7 @@ "" ] }, - "execution_count": 2, + "execution_count": 30, "metadata": {}, "output_type": "execute_result" } @@ -109,7 +109,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 31, "id": "8fc9234c-975b-485d-bfb3-d9100ff3b12d", "metadata": {}, "outputs": [], @@ -172,7 +172,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 32, "id": "f1ef497a-4fa7-499c-8237-21f4cad1d45b", "metadata": {}, "outputs": [ @@ -1030,7 +1030,7 @@ "" ] }, - "execution_count": 4, + "execution_count": 32, "metadata": {}, "output_type": "execute_result" } @@ -1061,7 +1061,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 33, "id": "b3bafa71-607c-49cc-9e5f-8f3d2f882410", "metadata": {}, "outputs": [ @@ -1101,7 +1101,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 34, "id": "9d17e195", "metadata": {}, "outputs": [ @@ -1116,7 +1116,7 @@ " None: 'No basemap (transparent background)'}" ] }, - "execution_count": 6, + "execution_count": 34, "metadata": {}, "output_type": "execute_result" } @@ -1129,7 +1129,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 35, "id": "9af1c710-0423-4d3e-9c93-4fff13d1dab5", "metadata": {}, "outputs": [ @@ -1155,7 +1155,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_29a7a84c4f5f27a159aeea5817f0d22a {\n", + " #map_128ce988162f593ff19fc23d663dd24b {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -1208,7 +1208,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_29a7a84c4f5f27a159aeea5817f0d22a" ></div>\n", + " <div class="folium-map" id="map_128ce988162f593ff19fc23d663dd24b" ></div>\n", " \n", " \n", " <div style="\n", @@ -1309,8 +1309,8 @@ "<script>\n", " \n", " \n", - " var map_29a7a84c4f5f27a159aeea5817f0d22a = L.map(\n", - " "map_29a7a84c4f5f27a159aeea5817f0d22a",\n", + " var map_128ce988162f593ff19fc23d663dd24b = L.map(\n", + " "map_128ce988162f593ff19fc23d663dd24b",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", @@ -1322,13 +1322,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_29a7a84c4f5f27a159aeea5817f0d22a);\n", + " L.control.scale().addTo(map_128ce988162f593ff19fc23d663dd24b);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_4dfa248eb5d09335ac1b3fd5396850e5 = L.tileLayer(\n", + " var tile_layer_1b4c8bb4625db47652544436a7779220 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1345,10 +1345,10 @@ " );\n", " \n", " \n", - " tile_layer_4dfa248eb5d09335ac1b3fd5396850e5.addTo(map_29a7a84c4f5f27a159aeea5817f0d22a);\n", + " tile_layer_1b4c8bb4625db47652544436a7779220.addTo(map_128ce988162f593ff19fc23d663dd24b);\n", " \n", " \n", - " var tile_layer_d1fc4d6d048bc1a726477ffbb8bdef61 = L.tileLayer(\n", + " var tile_layer_99620c941e8a8139b13115f57b72b9f5 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1365,10 +1365,10 @@ " );\n", " \n", " \n", - " tile_layer_d1fc4d6d048bc1a726477ffbb8bdef61.addTo(map_29a7a84c4f5f27a159aeea5817f0d22a);\n", + " tile_layer_99620c941e8a8139b13115f57b72b9f5.addTo(map_128ce988162f593ff19fc23d663dd24b);\n", " \n", " \n", - " var tile_layer_f7b3546d10d53704f476551429bcb11d = L.tileLayer(\n", + " var tile_layer_d3d384c1b278d53b7b3c8412eb69d5c1 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -1385,37 +1385,37 @@ " );\n", " \n", " \n", - " tile_layer_f7b3546d10d53704f476551429bcb11d.addTo(map_29a7a84c4f5f27a159aeea5817f0d22a);\n", + " tile_layer_d3d384c1b278d53b7b3c8412eb69d5c1.addTo(map_128ce988162f593ff19fc23d663dd24b);\n", " \n", " \n", - " var layer_control_c169ca1ef3f361ac359f7b56e5926475_layers = {\n", + " var layer_control_2103966baa0818da475e35c126b15826_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_4dfa248eb5d09335ac1b3fd5396850e5,\n", + " "ESRI Satellite" : tile_layer_1b4c8bb4625db47652544436a7779220,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_d1fc4d6d048bc1a726477ffbb8bdef61,\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_f7b3546d10d53704f476551429bcb11d,\n", + " "Place Labels" : tile_layer_99620c941e8a8139b13115f57b72b9f5,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_d3d384c1b278d53b7b3c8412eb69d5c1,\n", " },\n", " };\n", - " let layer_control_c169ca1ef3f361ac359f7b56e5926475 = L.control.layers(\n", - " layer_control_c169ca1ef3f361ac359f7b56e5926475_layers.base_layers,\n", - " layer_control_c169ca1ef3f361ac359f7b56e5926475_layers.overlays,\n", + " let layer_control_2103966baa0818da475e35c126b15826 = L.control.layers(\n", + " layer_control_2103966baa0818da475e35c126b15826_layers.base_layers,\n", + " layer_control_2103966baa0818da475e35c126b15826_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_29a7a84c4f5f27a159aeea5817f0d22a);\n", + " ).addTo(map_128ce988162f593ff19fc23d663dd24b);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 7, + "execution_count": 35, "metadata": {}, "output_type": "execute_result" } @@ -1483,7 +1483,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 36, "id": "965db310-ee99-4af3-96a8-00e63854351d", "metadata": {}, "outputs": [ @@ -2361,7 +2361,7 @@ "" ] }, - "execution_count": 8, + "execution_count": 36, "metadata": {}, "output_type": "execute_result" } @@ -2392,7 +2392,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 37, "id": "bdba0ec8-aced-4a16-a5ad-e261aa586cfd", "metadata": {}, "outputs": [ @@ -2412,7 +2412,7 @@ " 'center': [-88.34727736513193, 37.42233953352921, 0]}" ] }, - "execution_count": 9, + "execution_count": 37, "metadata": {}, "output_type": "execute_result" } @@ -2439,7 +2439,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 38, "id": "f6183652-36ca-4d4f-af4e-41070e813092", "metadata": {}, "outputs": [ @@ -2465,7 +2465,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_17da83050908715966203554d774b74f {\n", + " #map_2b2e6fb045a8d076ff6445418e57b3f7 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -2518,7 +2518,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_17da83050908715966203554d774b74f" ></div>\n", + " <div class="folium-map" id="map_2b2e6fb045a8d076ff6445418e57b3f7" ></div>\n", " \n", " \n", " <div style="\n", @@ -2619,8 +2619,8 @@ "<script>\n", " \n", " \n", - " var map_17da83050908715966203554d774b74f = L.map(\n", - " "map_17da83050908715966203554d774b74f",\n", + " var map_2b2e6fb045a8d076ff6445418e57b3f7 = L.map(\n", + " "map_2b2e6fb045a8d076ff6445418e57b3f7",\n", " {\n", " center: [40.5, -84.05],\n", " crs: L.CRS.EPSG3857,\n", @@ -2632,13 +2632,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_17da83050908715966203554d774b74f);\n", + " L.control.scale().addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_6c4beab8788d079339b107f763eac88f = L.tileLayer(\n", + " var tile_layer_607c23057626d2ac0e686a19268d8736 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2655,10 +2655,10 @@ " );\n", " \n", " \n", - " tile_layer_6c4beab8788d079339b107f763eac88f.addTo(map_17da83050908715966203554d774b74f);\n", + " tile_layer_607c23057626d2ac0e686a19268d8736.addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", " \n", " \n", - " var tile_layer_b0874cc573f4d1250b6573b6bf72c0ee = L.tileLayer(\n", + " var tile_layer_6bbac6235da4cce03bf910a8fd9d895b = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2675,10 +2675,10 @@ " );\n", " \n", " \n", - " tile_layer_b0874cc573f4d1250b6573b6bf72c0ee.addTo(map_17da83050908715966203554d774b74f);\n", + " tile_layer_6bbac6235da4cce03bf910a8fd9d895b.addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", " \n", " \n", - " var tile_layer_81d0d7445eb178e98f0332ea3f4fb512 = L.tileLayer(\n", + " var tile_layer_d68ffb5de1b35982c3d06dc2caa281cb = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -2695,37 +2695,37 @@ " );\n", " \n", " \n", - " tile_layer_81d0d7445eb178e98f0332ea3f4fb512.addTo(map_17da83050908715966203554d774b74f);\n", + " tile_layer_d68ffb5de1b35982c3d06dc2caa281cb.addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", " \n", " \n", - " var layer_control_36841277bd3850aa25b1b73c738d93be_layers = {\n", + " var layer_control_2baf71acb8b604070200e4b1646dc660_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_6c4beab8788d079339b107f763eac88f,\n", + " "ESRI Satellite" : tile_layer_607c23057626d2ac0e686a19268d8736,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_b0874cc573f4d1250b6573b6bf72c0ee,\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_81d0d7445eb178e98f0332ea3f4fb512,\n", + " "Place Labels" : tile_layer_6bbac6235da4cce03bf910a8fd9d895b,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_d68ffb5de1b35982c3d06dc2caa281cb,\n", " },\n", " };\n", - " let layer_control_36841277bd3850aa25b1b73c738d93be = L.control.layers(\n", - " layer_control_36841277bd3850aa25b1b73c738d93be_layers.base_layers,\n", - " layer_control_36841277bd3850aa25b1b73c738d93be_layers.overlays,\n", + " let layer_control_2baf71acb8b604070200e4b1646dc660 = L.control.layers(\n", + " layer_control_2baf71acb8b604070200e4b1646dc660_layers.base_layers,\n", + " layer_control_2baf71acb8b604070200e4b1646dc660_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_17da83050908715966203554d774b74f);\n", + " ).addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 10, + "execution_count": 38, "metadata": {}, "output_type": "execute_result" } @@ -2776,7 +2776,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 39, "id": "d55ccd28-c8ba-47cf-bfd3-03c3a8cd5beb", "metadata": {}, "outputs": [ @@ -3707,7 +3707,7 @@ "" ] }, - "execution_count": 11, + "execution_count": 39, "metadata": {}, "output_type": "execute_result" } @@ -3737,7 +3737,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 40, "id": "6b3f9709-09bc-43ef-b3fd-d89f3c0cd5e9", "metadata": {}, "outputs": [ @@ -3771,7 +3771,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 41, "id": "f283977b-e862-4f2d-9032-414d974a35b4", "metadata": {}, "outputs": [ @@ -3804,7 +3804,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_87a47546f2944f51eb0a8a9fa98df521 {\n", + " #map_1c77a77493a799d04bcf7b0bcd5afac8 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -3858,14 +3858,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_87a47546f2944f51eb0a8a9fa98df521" ></div>\n", + " <div class="folium-map" id="map_1c77a77493a799d04bcf7b0bcd5afac8" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_87a47546f2944f51eb0a8a9fa98df521 = L.map(\n", - " "map_87a47546f2944f51eb0a8a9fa98df521",\n", + " var map_1c77a77493a799d04bcf7b0bcd5afac8 = L.map(\n", + " "map_1c77a77493a799d04bcf7b0bcd5afac8",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -3877,13 +3877,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_87a47546f2944f51eb0a8a9fa98df521);\n", + " L.control.scale().addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_23a68b31c1374c611b82d17218d8e6f7 = L.tileLayer(\n", + " var tile_layer_93cf1ff77eaf426719e86f762cdd43c3 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -3900,10 +3900,10 @@ " );\n", " \n", " \n", - " tile_layer_23a68b31c1374c611b82d17218d8e6f7.addTo(map_87a47546f2944f51eb0a8a9fa98df521);\n", + " tile_layer_93cf1ff77eaf426719e86f762cdd43c3.addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", " \n", " \n", - " var tile_layer_f1f4b08566106e9419f4079990d81e19 = L.tileLayer(\n", + " var tile_layer_eba5a7255c6264596501dc61880bab16 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", @@ -3920,66 +3920,66 @@ " );\n", " \n", " \n", - " tile_layer_f1f4b08566106e9419f4079990d81e19.addTo(map_87a47546f2944f51eb0a8a9fa98df521);\n", + " tile_layer_eba5a7255c6264596501dc61880bab16.addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", " \n", " \n", - " var layer_control_5f6014c84df9ae57945384eac9e71fd6_layers = {\n", + " var layer_control_5646950ec3f4c491731d0227637de9e5_layers = {\n", " base_layers : {\n", - " "CartoDB Dark" : tile_layer_23a68b31c1374c611b82d17218d8e6f7,\n", + " "CartoDB Dark" : tile_layer_93cf1ff77eaf426719e86f762cdd43c3,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights" : tile_layer_f1f4b08566106e9419f4079990d81e19,\n", + " "Black Marble Nightlights" : tile_layer_eba5a7255c6264596501dc61880bab16,\n", " },\n", " };\n", - " let layer_control_5f6014c84df9ae57945384eac9e71fd6 = L.control.layers(\n", - " layer_control_5f6014c84df9ae57945384eac9e71fd6_layers.base_layers,\n", - " layer_control_5f6014c84df9ae57945384eac9e71fd6_layers.overlays,\n", + " let layer_control_5646950ec3f4c491731d0227637de9e5 = L.control.layers(\n", + " layer_control_5646950ec3f4c491731d0227637de9e5_layers.base_layers,\n", + " layer_control_5646950ec3f4c491731d0227637de9e5_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_87a47546f2944f51eb0a8a9fa98df521);\n", + " ).addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", "\n", " \n", " \n", - " var color_map_45f7bb9609ded694c883df496ca5fc31 = {};\n", + " var color_map_46ba6a2ac626b757b5d014ea9757a1a0 = {};\n", "\n", " \n", - " color_map_45f7bb9609ded694c883df496ca5fc31.color = d3.scale.threshold()\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.color = d3.scale.threshold()\n", " .domain([-150.0, -149.3987975951904, -148.79759519038078, -148.19639278557113, -147.59519038076152, -146.9939879759519, -146.3927855711423, -145.79158316633266, -145.19038076152304, -144.58917835671343, -143.98797595190382, -143.38677354709418, -142.78557114228457, -142.18436873747495, -141.58316633266534, -140.9819639278557, -140.3807615230461, -139.77955911823648, -139.17835671342687, -138.57715430861722, -137.9759519038076, -137.374749498998, -136.7735470941884, -136.17234468937875, -135.57114228456913, -134.96993987975952, -134.3687374749499, -133.76753507014027, -133.16633266533066, -132.56513026052104, -131.96392785571143, -131.3627254509018, -130.76152304609218, -130.16032064128257, -129.55911823647295, -128.95791583166334, -128.3567134268537, -127.75551102204409, -127.15430861723448, -126.55310621242485, -125.95190380761522, -125.35070140280561, -124.749498997996, -124.14829659318637, -123.54709418837675, -122.94589178356713, -122.34468937875752, -121.7434869739479, -121.14228456913827, -120.54108216432866, -119.93987975951904, -119.33867735470942, -118.73747494989979, -118.13627254509018, -117.53507014028057, -116.93386773547094, -116.33266533066131, -115.7314629258517, -115.13026052104209, -114.52905811623246, -113.92785571142284, -113.32665330661322, -112.72545090180361, -112.12424849699399, -111.52304609218436, -110.92184368737475, -110.32064128256513, -109.71943887775551, -109.11823647294588, -108.51703406813627, -107.91583166332666, -107.31462925851704, -106.71342685370742, -106.11222444889779, -105.51102204408818, -104.90981963927857, -104.30861723446894, -103.70741482965931, -103.1062124248497, -102.50501002004009, -101.90380761523046, -101.30260521042084, -100.70140280561122, -100.10020040080161, -99.49899799599199, -98.89779559118236, -98.29659318637275, -97.69539078156313, -97.09418837675351, -96.49298597194388, -95.89178356713427, -95.29058116232466, -94.68937875751503, -94.0881763527054, -93.48697394789579, -92.88577154308618, -92.28456913827655, -91.68336673346693, -91.08216432865731, -90.4809619238477, -89.87975951903807, -89.27855711422845, -88.67735470941884, -88.07615230460922, -87.4749498997996, -86.87374749498997, -86.27254509018036, -85.67134268537075, -85.07014028056112, -84.46893787575151, -83.86773547094188, -83.26653306613227, -82.66533066132264, -82.06412825651303, -81.4629258517034, -80.86172344689379, -80.26052104208416, -79.65931863727455, -79.05811623246493, -78.45691382765531, -77.85571142284569, -77.25450901803607, -76.65330661322645, -76.05210420841684, -75.45090180360721, -74.8496993987976, -74.24849699398797, -73.64729458917836, -73.04609218436873, -72.44488977955912, -71.84368737474949, -71.24248496993988, -70.64128256513025, -70.04008016032064, -69.43887775551102, -68.8376753507014, -68.23647294589178, -67.63527054108216, -67.03406813627255, -66.43286573146293, -65.83166332665331, -65.23046092184369, -64.62925851703407, -64.02805611222445, -63.426853707414836, -62.82565130260521, -62.2244488977956, -61.62324649298597, -61.02204408817636, -60.42084168336673, -59.81963927855712, -59.21843687374749, -58.61723446893788, -58.016032064128254, -57.41482965931864, -56.813627254509015, -56.2124248496994, -55.611222444889776, -55.010020040080164, -54.40881763527054, -53.807615230460925, -53.2064128256513, -52.605210420841686, -52.00400801603206, -51.40280561122245, -50.80160320641282, -50.20040080160321, -49.59919839679358, -48.99799599198397, -48.39679358717434, -47.79559118236473, -47.194388777555105, -46.59318637274549, -45.991983967935866, -45.390781563126254, -44.78957915831663, -44.188376753507015, -43.58717434869739, -42.985971943887776, -42.38476953907815, -41.78356713426854, -41.18236472945891, -40.5811623246493, -39.979959919839686, -39.37875751503006, -38.77755511022045, -38.17635270541082, -37.57515030060121, -36.97394789579158, -36.37274549098197, -35.77154308617234, -35.17034068136273, -34.569138276553105, -33.96793587174349, -33.366733466933866, -32.76553106212425, -32.16432865731463, -31.563126252505015, -30.961923847695388, -30.360721442885776, -29.75951903807615, -29.158316633266537, -28.55711422845691, -27.9559118236473, -27.354709418837672, -26.75350701402806, -26.152304609218433, -25.55110220440882, -24.949899799599194, -24.348697394789582, -23.747494989979955, -23.146292585170343, -22.545090180360717, -21.943887775551104, -21.342685370741492, -20.74148296593185, -20.14028056112224, -19.539078156312627, -18.937875751503014, -18.336673346693374, -17.73547094188376, -17.13426853707415, -16.533066132264537, -15.931863727454896, -15.330661322645284, -14.729458917835672, -14.12825651302606, -13.527054108216447, -12.925851703406806, -12.324649298597194, -11.723446893787582, -11.12224448897797, -10.521042084168329, -9.919839679358716, -9.318637274549104, -8.717434869739492, -8.116232464929851, -7.515030060120239, -6.913827655310627, -6.312625250501014, -5.711422845691374, -5.110220440881761, -4.509018036072149, -3.9078156312625367, -3.306613226452896, -2.7054108216432837, -2.1042084168336714, -1.5030060120240591, -0.9018036072144184, -0.30060120240480614, 0.30060120240480614, 0.9018036072144184, 1.5030060120240591, 2.1042084168336714, 2.7054108216432837, 3.306613226452896, 3.9078156312625367, 4.509018036072149, 5.110220440881761, 5.711422845691374, 6.312625250501014, 6.913827655310627, 7.515030060120239, 8.116232464929851, 8.717434869739492, 9.318637274549104, 9.919839679358716, 10.521042084168329, 11.12224448897797, 11.723446893787582, 12.324649298597194, 12.925851703406806, 13.527054108216447, 14.12825651302606, 14.729458917835672, 15.330661322645284, 15.931863727454896, 16.533066132264537, 17.13426853707415, 17.73547094188376, 18.336673346693374, 18.937875751503014, 19.539078156312627, 20.14028056112224, 20.74148296593185, 21.342685370741492, 21.943887775551104, 22.545090180360717, 23.14629258517033, 23.74749498997997, 24.348697394789582, 24.949899799599194, 25.551102204408807, 26.152304609218447, 26.75350701402806, 27.354709418837672, 27.955911823647284, 28.557114228456925, 29.158316633266537, 29.75951903807615, 30.36072144288576, 30.961923847695402, 31.563126252505015, 32.16432865731463, 32.76553106212424, 33.36673346693388, 33.96793587174349, 34.569138276553105, 35.17034068136272, 35.77154308617236, 36.37274549098197, 36.97394789579158, 37.575150300601194, 38.176352705410835, 38.77755511022045, 39.37875751503006, 39.97995991983967, 40.58116232464931, 41.182364729458925, 41.78356713426854, 42.38476953907815, 42.98597194388776, 43.5871743486974, 44.188376753507015, 44.78957915831663, 45.39078156312624, 45.99198396793588, 46.59318637274549, 47.194388777555105, 47.79559118236472, 48.39679358717436, 48.99799599198397, 49.59919839679358, 50.200400801603195, 50.801603206412835, 51.40280561122245, 52.00400801603206, 52.60521042084167, 53.20641282565131, 53.807615230460925, 54.40881763527054, 55.01002004008015, 55.61122244488979, 56.2124248496994, 56.813627254509015, 57.41482965931863, 58.01603206412827, 58.61723446893788, 59.21843687374749, 59.819639278557105, 60.420841683366746, 61.02204408817636, 61.62324649298597, 62.22444889779558, 62.82565130260522, 63.426853707414836, 64.02805611222445, 64.62925851703406, 65.2304609218437, 65.83166332665331, 66.43286573146293, 67.03406813627254, 67.63527054108218, 68.23647294589179, 68.8376753507014, 69.43887775551102, 70.04008016032063, 70.64128256513027, 71.24248496993988, 71.84368737474949, 72.4448897795591, 73.04609218436875, 73.64729458917836, 74.24849699398797, 74.84969939879758, 75.45090180360722, 76.05210420841684, 76.65330661322645, 77.25450901803606, 77.8557114228457, 78.45691382765531, 79.05811623246493, 79.65931863727454, 80.26052104208418, 80.86172344689379, 81.4629258517034, 82.06412825651302, 82.66533066132266, 83.26653306613227, 83.86773547094188, 84.4689378757515, 85.07014028056113, 85.67134268537075, 86.27254509018036, 86.87374749498997, 87.47494989979961, 88.07615230460922, 88.67735470941884, 89.27855711422845, 89.87975951903809, 90.4809619238477, 91.08216432865731, 91.68336673346693, 92.28456913827657, 92.88577154308618, 93.48697394789579, 94.0881763527054, 94.68937875751504, 95.29058116232466, 95.89178356713427, 96.49298597194388, 97.0941883767535, 97.69539078156313, 98.29659318637275, 98.89779559118236, 99.49899799599197, 100.10020040080161, 100.70140280561122, 101.30260521042084, 101.90380761523045, 102.50501002004009, 103.1062124248497, 103.70741482965931, 104.30861723446893, 104.90981963927857, 105.51102204408818, 106.11222444889779, 106.7134268537074, 107.31462925851702, 107.91583166332663, 108.5170340681363, 109.11823647294591, 109.71943887775552, 110.32064128256513, 110.92184368737475, 111.52304609218436, 112.12424849699397, 112.72545090180358, 113.32665330661325, 113.92785571142286, 114.52905811623248, 115.13026052104209, 115.7314629258517, 116.33266533066131, 116.93386773547093, 117.53507014028054, 118.13627254509021, 118.73747494989982, 119.33867735470943, 119.93987975951904, 120.54108216432866, 121.14228456913827, 121.74348697394788, 122.3446893787575, 122.9458917835671, 123.54709418837678, 124.14829659318639, 124.749498997996, 125.35070140280561, 125.95190380761522, 126.55310621242484, 127.15430861723445, 127.75551102204406, 128.35671342685373, 128.95791583166334, 129.55911823647295, 130.16032064128257, 130.76152304609218, 131.3627254509018, 131.9639278557114, 132.56513026052102, 133.16633266533069, 133.7675350701403, 134.3687374749499, 134.96993987975952, 135.57114228456913, 136.17234468937875, 136.77354709418836, 137.37474949899797, 137.97595190380764, 138.57715430861725, 139.17835671342687, 139.77955911823648, 140.3807615230461, 140.9819639278557, 141.58316633266531, 142.18436873747493, 142.7855711422846, 143.3867735470942, 143.98797595190382, 144.58917835671343, 145.19038076152304, 145.79158316633266, 146.39278557114227, 146.99398797595188, 147.59519038076155, 148.19639278557116, 148.79759519038078, 149.3987975951904, 150.0])\n", " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", " \n", "\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.x = d3.scale.linear()\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.x = d3.scale.linear()\n", " .domain([-150.0, 150.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.legend = L.control({position: 'topright'});\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.legend.addTo(map_87a47546f2944f51eb0a8a9fa98df521);\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.legend = L.control({position: 'topright'});\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.legend.addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", "\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.xAxis = d3.svg.axis()\n", - " .scale(color_map_45f7bb9609ded694c883df496ca5fc31.x)\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.xAxis = d3.svg.axis()\n", + " .scale(color_map_46ba6a2ac626b757b5d014ea9757a1a0.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([-150.0, '', -90.0, '', -30.0, '', 30.0, '', 90.0, '', 150.0, '']);\n", "\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.g = color_map_45f7bb9609ded694c883df496ca5fc31.svg.append("g")\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.g = color_map_46ba6a2ac626b757b5d014ea9757a1a0.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.g.selectAll("rect")\n", - " .data(color_map_45f7bb9609ded694c883df496ca5fc31.color.range().map(function(d, i) {\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.g.selectAll("rect")\n", + " .data(color_map_46ba6a2ac626b757b5d014ea9757a1a0.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_45f7bb9609ded694c883df496ca5fc31.x(color_map_45f7bb9609ded694c883df496ca5fc31.color.domain()[i - 1]) : color_map_45f7bb9609ded694c883df496ca5fc31.x.range()[0],\n", - " x1: i < color_map_45f7bb9609ded694c883df496ca5fc31.color.domain().length ? color_map_45f7bb9609ded694c883df496ca5fc31.x(color_map_45f7bb9609ded694c883df496ca5fc31.color.domain()[i]) : color_map_45f7bb9609ded694c883df496ca5fc31.x.range()[1],\n", + " x0: i ? color_map_46ba6a2ac626b757b5d014ea9757a1a0.x(color_map_46ba6a2ac626b757b5d014ea9757a1a0.color.domain()[i - 1]) : color_map_46ba6a2ac626b757b5d014ea9757a1a0.x.range()[0],\n", + " x1: i < color_map_46ba6a2ac626b757b5d014ea9757a1a0.color.domain().length ? color_map_46ba6a2ac626b757b5d014ea9757a1a0.x(color_map_46ba6a2ac626b757b5d014ea9757a1a0.color.domain()[i]) : color_map_46ba6a2ac626b757b5d014ea9757a1a0.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -3989,7 +3989,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_45f7bb9609ded694c883df496ca5fc31.g.call(color_map_45f7bb9609ded694c883df496ca5fc31.xAxis).append("text")\n", + " color_map_46ba6a2ac626b757b5d014ea9757a1a0.g.call(color_map_46ba6a2ac626b757b5d014ea9757a1a0.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -3998,10 +3998,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 13, + "execution_count": 41, "metadata": {}, "output_type": "execute_result" } @@ -4053,7 +4053,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 42, "id": "7213b9f2-8444-462b-a994-3e8cbb6beed2", "metadata": {}, "outputs": [], @@ -4113,7 +4113,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 43, "id": "22a738e8", "metadata": {}, "outputs": [ @@ -5035,7 +5035,7 @@ "" ] }, - "execution_count": 15, + "execution_count": 43, "metadata": {}, "output_type": "execute_result" } @@ -5047,7 +5047,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 44, "id": "618ba9da", "metadata": {}, "outputs": [ @@ -5969,7 +5969,7 @@ "" ] }, - "execution_count": 16, + "execution_count": 44, "metadata": {}, "output_type": "execute_result" } @@ -5981,7 +5981,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 45, "id": "f01b3d85", "metadata": {}, "outputs": [ @@ -6016,7 +6016,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_efe4c45e973cfd667a2b3512409dc885 {\n", + " #map_d5ff536c58c3f5a4266b5b8bb7ffb9b6 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6121,14 +6121,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_efe4c45e973cfd667a2b3512409dc885" ></div>\n", + " <div class="folium-map" id="map_d5ff536c58c3f5a4266b5b8bb7ffb9b6" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_efe4c45e973cfd667a2b3512409dc885 = L.map(\n", - " "map_efe4c45e973cfd667a2b3512409dc885",\n", + " var map_d5ff536c58c3f5a4266b5b8bb7ffb9b6 = L.map(\n", + " "map_d5ff536c58c3f5a4266b5b8bb7ffb9b6",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6140,13 +6140,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_efe4c45e973cfd667a2b3512409dc885);\n", + " L.control.scale().addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_585a41aa7a7d4fb88002d485af02afdb = L.tileLayer(\n", + " var tile_layer_8969acbc1f9c0d7510477183d72c016e = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6163,10 +6163,10 @@ " );\n", " \n", " \n", - " tile_layer_585a41aa7a7d4fb88002d485af02afdb.addTo(map_efe4c45e973cfd667a2b3512409dc885);\n", + " tile_layer_8969acbc1f9c0d7510477183d72c016e.addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", " \n", " \n", - " var tile_layer_99115eded3b1de305e581f70ee03229b = L.tileLayer(\n", + " var tile_layer_c6d3bceed7a6e2fd9c7c233838963294 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6183,10 +6183,10 @@ " );\n", " \n", " \n", - " tile_layer_99115eded3b1de305e581f70ee03229b.addTo(map_efe4c45e973cfd667a2b3512409dc885);\n", + " tile_layer_c6d3bceed7a6e2fd9c7c233838963294.addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", " \n", " \n", - " var tile_layer_d824e81df526062d4d651f2c0d6f6fed = L.tileLayer(\n", + " var tile_layer_d316a43c35d27dac013d216697b27a7e = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", " {\n", " "minZoom": 0,\n", @@ -6203,10 +6203,10 @@ " );\n", " \n", " \n", - " tile_layer_d824e81df526062d4d651f2c0d6f6fed.addTo(map_efe4c45e973cfd667a2b3512409dc885);\n", + " tile_layer_d316a43c35d27dac013d216697b27a7e.addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", " \n", " \n", - " var tile_layer_0658e1a34ac89825d0073e500b94d65d = L.tileLayer(\n", + " var tile_layer_27b770bf40d98c0657e958eac8544ab4 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6223,43 +6223,43 @@ " );\n", " \n", " \n", - " tile_layer_0658e1a34ac89825d0073e500b94d65d.addTo(map_efe4c45e973cfd667a2b3512409dc885);\n", + " tile_layer_27b770bf40d98c0657e958eac8544ab4.addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", " \n", " \n", - " var side_by_side_layers_60ac0f25dcc2454713db4875b68edeed = L.control.sideBySide(\n", - " tile_layer_d824e81df526062d4d651f2c0d6f6fed, tile_layer_0658e1a34ac89825d0073e500b94d65d\n", - " ).addTo(map_efe4c45e973cfd667a2b3512409dc885);\n", + " var side_by_side_layers_f67c0da823021b591d1b3a579f078c50 = L.control.sideBySide(\n", + " tile_layer_d316a43c35d27dac013d216697b27a7e, tile_layer_27b770bf40d98c0657e958eac8544ab4\n", + " ).addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", " \n", " \n", - " var layer_control_82299319cc73d070e87ad9ba22ae56d3_layers = {\n", + " var layer_control_a17437209840835ba3194c24b126a123_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_585a41aa7a7d4fb88002d485af02afdb,\n", + " "ESRI Satellite" : tile_layer_8969acbc1f9c0d7510477183d72c016e,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_99115eded3b1de305e581f70ee03229b,\n", - " "DOW7 Reflectivity" : tile_layer_d824e81df526062d4d651f2c0d6f6fed,\n", - " "DOW7 Velocity" : tile_layer_0658e1a34ac89825d0073e500b94d65d,\n", + " "Place Labels" : tile_layer_c6d3bceed7a6e2fd9c7c233838963294,\n", + " "DOW7 Reflectivity" : tile_layer_d316a43c35d27dac013d216697b27a7e,\n", + " "DOW7 Velocity" : tile_layer_27b770bf40d98c0657e958eac8544ab4,\n", " },\n", " };\n", - " let layer_control_82299319cc73d070e87ad9ba22ae56d3 = L.control.layers(\n", - " layer_control_82299319cc73d070e87ad9ba22ae56d3_layers.base_layers,\n", - " layer_control_82299319cc73d070e87ad9ba22ae56d3_layers.overlays,\n", + " let layer_control_a17437209840835ba3194c24b126a123 = L.control.layers(\n", + " layer_control_a17437209840835ba3194c24b126a123_layers.base_layers,\n", + " layer_control_a17437209840835ba3194c24b126a123_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_efe4c45e973cfd667a2b3512409dc885);\n", + " ).addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 17, + "execution_count": 45, "metadata": {}, "output_type": "execute_result" } @@ -6302,7 +6302,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 46, "id": "2461b25d-de5d-42b1-b30d-464185144021", "metadata": {}, "outputs": [ @@ -7224,7 +7224,7 @@ "" ] }, - "execution_count": 18, + "execution_count": 46, "metadata": {}, "output_type": "execute_result" } @@ -7254,7 +7254,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 47, "id": "f76739f7-236f-4b6f-be79-8772248e1f92", "metadata": {}, "outputs": [ @@ -7287,7 +7287,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 48, "id": "9c112371-86d5-4097-8c73-d9b510560cda", "metadata": {}, "outputs": [ @@ -7320,7 +7320,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_c6baf88ea1245fd600e77b01c7d24a27 {\n", + " #map_bb57bfdfc1d128bb559f68bcab2b4d15 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -7374,14 +7374,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_c6baf88ea1245fd600e77b01c7d24a27" ></div>\n", + " <div class="folium-map" id="map_bb57bfdfc1d128bb559f68bcab2b4d15" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_c6baf88ea1245fd600e77b01c7d24a27 = L.map(\n", - " "map_c6baf88ea1245fd600e77b01c7d24a27",\n", + " var map_bb57bfdfc1d128bb559f68bcab2b4d15 = L.map(\n", + " "map_bb57bfdfc1d128bb559f68bcab2b4d15",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -7393,13 +7393,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_c6baf88ea1245fd600e77b01c7d24a27);\n", + " L.control.scale().addTo(map_bb57bfdfc1d128bb559f68bcab2b4d15);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_9d7ad3fe65973c9a68c5fefe5dbd5792 = L.tileLayer(\n", + " var tile_layer_735100157e94bdc0e7ee0954165c6212 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -7416,10 +7416,10 @@ " );\n", " \n", " \n", - " tile_layer_9d7ad3fe65973c9a68c5fefe5dbd5792.addTo(map_c6baf88ea1245fd600e77b01c7d24a27);\n", + " tile_layer_735100157e94bdc0e7ee0954165c6212.addTo(map_bb57bfdfc1d128bb559f68bcab2b4d15);\n", " \n", " \n", - " var tile_layer_46a964fc480b6eb7b061b49f11150e22 = L.tileLayer(\n", + " var tile_layer_2c82324c8d93e12dba9f41d4c0b595a8 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -7436,10 +7436,10 @@ " );\n", " \n", " \n", - " tile_layer_46a964fc480b6eb7b061b49f11150e22.addTo(map_c6baf88ea1245fd600e77b01c7d24a27);\n", + " tile_layer_2c82324c8d93e12dba9f41d4c0b595a8.addTo(map_bb57bfdfc1d128bb559f68bcab2b4d15);\n", " \n", " \n", - " var tile_layer_6768906c380dc9820401d9e3c23ef52b = L.tileLayer(\n", + " var tile_layer_6db07d84b42ec55fca92f01528591765 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C1",\n", " {\n", " "minZoom": 0,\n", @@ -7456,67 +7456,67 @@ " );\n", " \n", " \n", - " tile_layer_6768906c380dc9820401d9e3c23ef52b.addTo(map_c6baf88ea1245fd600e77b01c7d24a27);\n", + " tile_layer_6db07d84b42ec55fca92f01528591765.addTo(map_bb57bfdfc1d128bb559f68bcab2b4d15);\n", " \n", " \n", - " var layer_control_5ef513a19406f9706d1f28f9872e4f5e_layers = {\n", + " var layer_control_14315e24ccc3a23f771ce366549758a1_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_9d7ad3fe65973c9a68c5fefe5dbd5792,\n", + " "ESRI Satellite" : tile_layer_735100157e94bdc0e7ee0954165c6212,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_46a964fc480b6eb7b061b49f11150e22,\n", - " "DOW7 Correlation Coefficient (Greenfield, IA)" : tile_layer_6768906c380dc9820401d9e3c23ef52b,\n", + " "Place Labels" : tile_layer_2c82324c8d93e12dba9f41d4c0b595a8,\n", + " "DOW7 Correlation Coefficient (Greenfield, IA)" : tile_layer_6db07d84b42ec55fca92f01528591765,\n", " },\n", " };\n", - " let layer_control_5ef513a19406f9706d1f28f9872e4f5e = L.control.layers(\n", - " layer_control_5ef513a19406f9706d1f28f9872e4f5e_layers.base_layers,\n", - " layer_control_5ef513a19406f9706d1f28f9872e4f5e_layers.overlays,\n", + " let layer_control_14315e24ccc3a23f771ce366549758a1 = L.control.layers(\n", + " layer_control_14315e24ccc3a23f771ce366549758a1_layers.base_layers,\n", + " layer_control_14315e24ccc3a23f771ce366549758a1_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_c6baf88ea1245fd600e77b01c7d24a27);\n", + " ).addTo(map_bb57bfdfc1d128bb559f68bcab2b4d15);\n", "\n", " \n", " \n", - " var color_map_b1499d0c604c041999894c073055cd4d = {};\n", + " var color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978 = {};\n", "\n", " \n", - " color_map_b1499d0c604c041999894c073055cd4d.color = d3.scale.threshold()\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.color = d3.scale.threshold()\n", " .domain([0.0, 0.002004008016032064, 0.004008016032064128, 0.006012024048096192, 0.008016032064128256, 0.01002004008016032, 0.012024048096192385, 0.014028056112224449, 0.01603206412825651, 0.018036072144288578, 0.02004008016032064, 0.022044088176352707, 0.02404809619238477, 0.026052104208416832, 0.028056112224448898, 0.03006012024048096, 0.03206412825651302, 0.03406813627254509, 0.036072144288577156, 0.03807615230460922, 0.04008016032064128, 0.04208416833667335, 0.04408817635270541, 0.04609218436873747, 0.04809619238476954, 0.050100200400801605, 0.052104208416833664, 0.05410821643286573, 0.056112224448897796, 0.05811623246492986, 0.06012024048096192, 0.06212424849699399, 0.06412825651302605, 0.06613226452905811, 0.06813627254509018, 0.07014028056112225, 0.07214428857715431, 0.07414829659318638, 0.07615230460921844, 0.0781563126252505, 0.08016032064128256, 0.08216432865731463, 0.0841683366733467, 0.08617234468937876, 0.08817635270541083, 0.09018036072144289, 0.09218436873747494, 0.09418837675350701, 0.09619238476953908, 0.09819639278557114, 0.10020040080160321, 0.10220440881763528, 0.10420841683366733, 0.1062124248496994, 0.10821643286573146, 0.11022044088176353, 0.11222444889779559, 0.11422845691382766, 0.11623246492985972, 0.11823647294589178, 0.12024048096192384, 0.12224448897795591, 0.12424849699398798, 0.12625250501002003, 0.1282565130260521, 0.13026052104208416, 0.13226452905811623, 0.1342685370741483, 0.13627254509018036, 0.13827655310621242, 0.1402805611222445, 0.14228456913827656, 0.14428857715430862, 0.1462925851703407, 0.14829659318637275, 0.15030060120240482, 0.1523046092184369, 0.15430861723446893, 0.156312625250501, 0.15831663326653306, 0.16032064128256512, 0.1623246492985972, 0.16432865731462926, 0.16633266533066132, 0.1683366733466934, 0.17034068136272545, 0.17234468937875752, 0.1743486973947896, 0.17635270541082165, 0.17835671342685372, 0.18036072144288579, 0.18236472945891782, 0.1843687374749499, 0.18637274549098196, 0.18837675350701402, 0.1903807615230461, 0.19238476953907815, 0.19438877755511022, 0.1963927855711423, 0.19839679358717435, 0.20040080160320642, 0.20240480961923848, 0.20440881763527055, 0.20641282565130262, 0.20841683366733466, 0.21042084168336672, 0.2124248496993988, 0.21442885771543085, 0.21643286573146292, 0.218436873747495, 0.22044088176352705, 0.22244488977955912, 0.22444889779559118, 0.22645290581162325, 0.22845691382765532, 0.23046092184368738, 0.23246492985971945, 0.23446893787575152, 0.23647294589178355, 0.23847695390781562, 0.24048096192384769, 0.24248496993987975, 0.24448897795591182, 0.24649298597194388, 0.24849699398797595, 0.250501002004008, 0.25250501002004005, 0.2545090180360721, 0.2565130260521042, 0.25851703406813625, 0.2605210420841683, 0.2625250501002004, 0.26452905811623245, 0.2665330661322645, 0.2685370741482966, 0.27054108216432865, 0.2725450901803607, 0.2745490981963928, 0.27655310621242485, 0.2785571142284569, 0.280561122244489, 0.28256513026052105, 0.2845691382765531, 0.2865731462925852, 0.28857715430861725, 0.2905811623246493, 0.2925851703406814, 0.29458917835671344, 0.2965931863727455, 0.2985971943887776, 0.30060120240480964, 0.3026052104208417, 0.3046092184368738, 0.3066132264529058, 0.30861723446893785, 0.3106212424849699, 0.312625250501002, 0.31462925851703405, 0.3166332665330661, 0.3186372745490982, 0.32064128256513025, 0.3226452905811623, 0.3246492985971944, 0.32665330661322645, 0.3286573146292585, 0.3306613226452906, 0.33266533066132264, 0.3346693386773547, 0.3366733466933868, 0.33867735470941884, 0.3406813627254509, 0.342685370741483, 0.34468937875751504, 0.3466933867735471, 0.3486973947895792, 0.35070140280561124, 0.3527054108216433, 0.35470941883767537, 0.35671342685370744, 0.3587174348697395, 0.36072144288577157, 0.3627254509018036, 0.36472945891783565, 0.3667334669338677, 0.3687374749498998, 0.37074148296593185, 0.3727454909819639, 0.374749498997996, 0.37675350701402804, 0.3787575150300601, 0.3807615230460922, 0.38276553106212424, 0.3847695390781563, 0.3867735470941884, 0.38877755511022044, 0.3907815631262525, 0.3927855711422846, 0.39478957915831664, 0.3967935871743487, 0.39879759519038077, 0.40080160320641284, 0.4028056112224449, 0.40480961923847697, 0.40681362725450904, 0.4088176352705411, 0.41082164328657317, 0.41282565130260523, 0.4148296593186373, 0.4168336673346693, 0.4188376753507014, 0.42084168336673344, 0.4228456913827655, 0.4248496993987976, 0.42685370741482964, 0.4288577154308617, 0.4308617234468938, 0.43286573146292584, 0.4348697394789579, 0.43687374749499, 0.43887775551102204, 0.4408817635270541, 0.44288577154308617, 0.44488977955911824, 0.4468937875751503, 0.44889779559118237, 0.45090180360721444, 0.4529058116232465, 0.45490981963927857, 0.45691382765531063, 0.4589178356713427, 0.46092184368737477, 0.46292585170340683, 0.4649298597194389, 0.46693386773547096, 0.46893787575150303, 0.4709418837675351, 0.4729458917835671, 0.4749498997995992, 0.47695390781563124, 0.4789579158316633, 0.48096192384769537, 0.48296593186372744, 0.4849699398797595, 0.48697394789579157, 0.48897795591182364, 0.4909819639278557, 0.49298597194388777, 0.49498997995991983, 0.4969939879759519, 0.49899799599198397, 0.501002004008016, 0.503006012024048, 0.5050100200400801, 0.5070140280561122, 0.5090180360721442, 0.5110220440881763, 0.5130260521042084, 0.5150300601202404, 0.5170340681362725, 0.5190380761523046, 0.5210420841683366, 0.5230460921843687, 0.5250501002004008, 0.5270541082164328, 0.5290581162324649, 0.531062124248497, 0.533066132264529, 0.5350701402805611, 0.5370741482965932, 0.5390781563126252, 0.5410821643286573, 0.5430861723446894, 0.5450901803607214, 0.5470941883767535, 0.5490981963927856, 0.5511022044088176, 0.5531062124248497, 0.5551102204408818, 0.5571142284569138, 0.5591182364729459, 0.561122244488978, 0.56312625250501, 0.5651302605210421, 0.5671342685370742, 0.5691382765531062, 0.5711422845691383, 0.5731462925851704, 0.5751503006012024, 0.5771543086172345, 0.5791583166332666, 0.5811623246492986, 0.5831663326653307, 0.5851703406813628, 0.5871743486973948, 0.5891783567134269, 0.591182364729459, 0.593186372745491, 0.5951903807615231, 0.5971943887775552, 0.5991983967935872, 0.6012024048096193, 0.6032064128256514, 0.6052104208416834, 0.6072144288577155, 0.6092184368737475, 0.6112224448897795, 0.6132264529058116, 0.6152304609218436, 0.6172344689378757, 0.6192384769539078, 0.6212424849699398, 0.6232464929859719, 0.625250501002004, 0.627254509018036, 0.6292585170340681, 0.6312625250501002, 0.6332665330661322, 0.6352705410821643, 0.6372745490981964, 0.6392785571142284, 0.6412825651302605, 0.6432865731462926, 0.6452905811623246, 0.6472945891783567, 0.6492985971943888, 0.6513026052104208, 0.6533066132264529, 0.655310621242485, 0.657314629258517, 0.6593186372745491, 0.6613226452905812, 0.6633266533066132, 0.6653306613226453, 0.6673346693386774, 0.6693386773547094, 0.6713426853707415, 0.6733466933867736, 0.6753507014028056, 0.6773547094188377, 0.6793587174348698, 0.6813627254509018, 0.6833667334669339, 0.685370741482966, 0.687374749498998, 0.6893787575150301, 0.6913827655310621, 0.6933867735470942, 0.6953907815631263, 0.6973947895791583, 0.6993987975951904, 0.7014028056112225, 0.7034068136272545, 0.7054108216432866, 0.7074148296593187, 0.7094188376753507, 0.7114228456913828, 0.7134268537074149, 0.7154308617234469, 0.717434869739479, 0.7194388777555111, 0.7214428857715431, 0.7234468937875751, 0.7254509018036072, 0.7274549098196392, 0.7294589178356713, 0.7314629258517034, 0.7334669338677354, 0.7354709418837675, 0.7374749498997996, 0.7394789579158316, 0.7414829659318637, 0.7434869739478958, 0.7454909819639278, 0.7474949899799599, 0.749498997995992, 0.751503006012024, 0.7535070140280561, 0.7555110220440882, 0.7575150300601202, 0.7595190380761523, 0.7615230460921844, 0.7635270541082164, 0.7655310621242485, 0.7675350701402806, 0.7695390781563126, 0.7715430861723447, 0.7735470941883767, 0.7755511022044088, 0.7775551102204409, 0.779559118236473, 0.781563126252505, 0.7835671342685371, 0.7855711422845691, 0.7875751503006012, 0.7895791583166333, 0.7915831663326653, 0.7935871743486974, 0.7955911823647295, 0.7975951903807615, 0.7995991983967936, 0.8016032064128257, 0.8036072144288577, 0.8056112224448898, 0.8076152304609219, 0.8096192384769539, 0.811623246492986, 0.8136272545090181, 0.8156312625250501, 0.8176352705410822, 0.8196392785571143, 0.8216432865731463, 0.8236472945891784, 0.8256513026052105, 0.8276553106212425, 0.8296593186372746, 0.8316633266533067, 0.8336673346693386, 0.8356713426853707, 0.8376753507014028, 0.8396793587174348, 0.8416833667334669, 0.843687374749499, 0.845691382765531, 0.8476953907815631, 0.8496993987975952, 0.8517034068136272, 0.8537074148296593, 0.8557114228456913, 0.8577154308617234, 0.8597194388777555, 0.8617234468937875, 0.8637274549098196, 0.8657314629258517, 0.8677354709418837, 0.8697394789579158, 0.8717434869739479, 0.87374749498998, 0.875751503006012, 0.8777555110220441, 0.8797595190380761, 0.8817635270541082, 0.8837675350701403, 0.8857715430861723, 0.8877755511022044, 0.8897795591182365, 0.8917835671342685, 0.8937875751503006, 0.8957915831663327, 0.8977955911823647, 0.8997995991983968, 0.9018036072144289, 0.9038076152304609, 0.905811623246493, 0.9078156312625251, 0.9098196392785571, 0.9118236472945892, 0.9138276553106213, 0.9158316633266533, 0.9178356713426854, 0.9198396793587175, 0.9218436873747495, 0.9238476953907816, 0.9258517034068137, 0.9278557114228457, 0.9298597194388778, 0.9318637274549099, 0.9338677354709419, 0.935871743486974, 0.9378757515030061, 0.9398797595190381, 0.9418837675350702, 0.9438877755511023, 0.9458917835671342, 0.9478957915831663, 0.9498997995991983, 0.9519038076152304, 0.9539078156312625, 0.9559118236472945, 0.9579158316633266, 0.9599198396793587, 0.9619238476953907, 0.9639278557114228, 0.9659318637274549, 0.9679358717434869, 0.969939879759519, 0.9719438877755511, 0.9739478957915831, 0.9759519038076152, 0.9779559118236473, 0.9799599198396793, 0.9819639278557114, 0.9839679358717435, 0.9859719438877755, 0.9879759519038076, 0.9899799599198397, 0.9919839679358717, 0.9939879759519038, 0.9959919839679359, 0.9979959919839679, 1.0])\n", " .range(['#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#30123bff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#4561d7ff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#36a8faff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#1ae5b7ff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#71fe5fff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#c9ef34ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#faba38ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#f66917ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#ca2903ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff', '#7a0402ff']);\n", " \n", "\n", - " color_map_b1499d0c604c041999894c073055cd4d.x = d3.scale.linear()\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.x = d3.scale.linear()\n", " .domain([0.0, 1.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_b1499d0c604c041999894c073055cd4d.legend = L.control({position: 'topright'});\n", - " color_map_b1499d0c604c041999894c073055cd4d.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_b1499d0c604c041999894c073055cd4d.legend.addTo(map_c6baf88ea1245fd600e77b01c7d24a27);\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.legend = L.control({position: 'topright'});\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.legend.addTo(map_bb57bfdfc1d128bb559f68bcab2b4d15);\n", "\n", - " color_map_b1499d0c604c041999894c073055cd4d.xAxis = d3.svg.axis()\n", - " .scale(color_map_b1499d0c604c041999894c073055cd4d.x)\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.xAxis = d3.svg.axis()\n", + " .scale(color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([0.0, '', 0.2, '', 0.4, '', 0.6, '', 0.8, '', 1.0, '']);\n", "\n", - " color_map_b1499d0c604c041999894c073055cd4d.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_b1499d0c604c041999894c073055cd4d.g = color_map_b1499d0c604c041999894c073055cd4d.svg.append("g")\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.g = color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_b1499d0c604c041999894c073055cd4d.g.selectAll("rect")\n", - " .data(color_map_b1499d0c604c041999894c073055cd4d.color.range().map(function(d, i) {\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.g.selectAll("rect")\n", + " .data(color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_b1499d0c604c041999894c073055cd4d.x(color_map_b1499d0c604c041999894c073055cd4d.color.domain()[i - 1]) : color_map_b1499d0c604c041999894c073055cd4d.x.range()[0],\n", - " x1: i < color_map_b1499d0c604c041999894c073055cd4d.color.domain().length ? color_map_b1499d0c604c041999894c073055cd4d.x(color_map_b1499d0c604c041999894c073055cd4d.color.domain()[i]) : color_map_b1499d0c604c041999894c073055cd4d.x.range()[1],\n", + " x0: i ? color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.x(color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.color.domain()[i - 1]) : color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.x.range()[0],\n", + " x1: i < color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.color.domain().length ? color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.x(color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.color.domain()[i]) : color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -7526,7 +7526,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_b1499d0c604c041999894c073055cd4d.g.call(color_map_b1499d0c604c041999894c073055cd4d.xAxis).append("text")\n", + " color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.g.call(color_map_8f4d8e8b6ed8bdf7a4e79a20800cc978.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -7535,10 +7535,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 20, + "execution_count": 48, "metadata": {}, "output_type": "execute_result" } @@ -7580,7 +7580,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 49, "id": "efb13664-1597-478a-b8e5-fac20e6ac481", "metadata": {}, "outputs": [ @@ -8502,7 +8502,7 @@ "" ] }, - "execution_count": 21, + "execution_count": 49, "metadata": {}, "output_type": "execute_result" } @@ -8532,7 +8532,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 50, "id": "14d08573-78ea-45bf-baf0-58cddf840401", "metadata": {}, "outputs": [ @@ -8565,7 +8565,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 51, "id": "b062836d-83f6-414d-91d2-9255e0b46a3c", "metadata": {}, "outputs": [ @@ -8598,7 +8598,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_6a955d024552153674a9e969f1da8703 {\n", + " #map_c2bb6424cc10afbcd313489a26a2b2f0 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -8652,14 +8652,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_6a955d024552153674a9e969f1da8703" ></div>\n", + " <div class="folium-map" id="map_c2bb6424cc10afbcd313489a26a2b2f0" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_6a955d024552153674a9e969f1da8703 = L.map(\n", - " "map_6a955d024552153674a9e969f1da8703",\n", + " var map_c2bb6424cc10afbcd313489a26a2b2f0 = L.map(\n", + " "map_c2bb6424cc10afbcd313489a26a2b2f0",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -8671,13 +8671,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_6a955d024552153674a9e969f1da8703);\n", + " L.control.scale().addTo(map_c2bb6424cc10afbcd313489a26a2b2f0);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_b18acd1936c0932cd49f5dfe17e91abf = L.tileLayer(\n", + " var tile_layer_782a8f14032d7f6ba145ea67b94b2316 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -8694,10 +8694,10 @@ " );\n", " \n", " \n", - " tile_layer_b18acd1936c0932cd49f5dfe17e91abf.addTo(map_6a955d024552153674a9e969f1da8703);\n", + " tile_layer_782a8f14032d7f6ba145ea67b94b2316.addTo(map_c2bb6424cc10afbcd313489a26a2b2f0);\n", " \n", " \n", - " var tile_layer_ccb223052259f2cb12330e64a425b922 = L.tileLayer(\n", + " var tile_layer_6e712a85afaba50842b2a343f176e0f5 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -8714,10 +8714,10 @@ " );\n", " \n", " \n", - " tile_layer_ccb223052259f2cb12330e64a425b922.addTo(map_6a955d024552153674a9e969f1da8703);\n", + " tile_layer_6e712a85afaba50842b2a343f176e0f5.addTo(map_c2bb6424cc10afbcd313489a26a2b2f0);\n", " \n", " \n", - " var tile_layer_e207b079b26f79935656c7e0c1bd89d7 = L.tileLayer(\n", + " var tile_layer_f34aff66a254fcba1fae0f562f414101 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=gist_ncar\\u0026rescale=55%2C250",\n", " {\n", " "minZoom": 0,\n", @@ -8734,67 +8734,67 @@ " );\n", " \n", " \n", - " tile_layer_e207b079b26f79935656c7e0c1bd89d7.addTo(map_6a955d024552153674a9e969f1da8703);\n", + " tile_layer_f34aff66a254fcba1fae0f562f414101.addTo(map_c2bb6424cc10afbcd313489a26a2b2f0);\n", " \n", " \n", - " var layer_control_52633268d26427b96afcb0c48c38d4a1_layers = {\n", + " var layer_control_88739aafc0508d8e20609793e0dc0796_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_b18acd1936c0932cd49f5dfe17e91abf,\n", + " "ESRI Satellite" : tile_layer_782a8f14032d7f6ba145ea67b94b2316,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_ccb223052259f2cb12330e64a425b922,\n", - " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_e207b079b26f79935656c7e0c1bd89d7,\n", + " "Place Labels" : tile_layer_6e712a85afaba50842b2a343f176e0f5,\n", + " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_f34aff66a254fcba1fae0f562f414101,\n", " },\n", " };\n", - " let layer_control_52633268d26427b96afcb0c48c38d4a1 = L.control.layers(\n", - " layer_control_52633268d26427b96afcb0c48c38d4a1_layers.base_layers,\n", - " layer_control_52633268d26427b96afcb0c48c38d4a1_layers.overlays,\n", + " let layer_control_88739aafc0508d8e20609793e0dc0796 = L.control.layers(\n", + " layer_control_88739aafc0508d8e20609793e0dc0796_layers.base_layers,\n", + " layer_control_88739aafc0508d8e20609793e0dc0796_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_6a955d024552153674a9e969f1da8703);\n", + " ).addTo(map_c2bb6424cc10afbcd313489a26a2b2f0);\n", "\n", " \n", " \n", - " var color_map_73746c59f5ea7c1aa5113c1382a169ee = {};\n", + " var color_map_a82f74be030687e32e976618666bf311 = {};\n", "\n", " \n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.color = d3.scale.threshold()\n", + " color_map_a82f74be030687e32e976618666bf311.color = d3.scale.threshold()\n", " .domain([55.0, 55.390781563126254, 55.78156312625251, 56.17234468937876, 56.56312625250501, 56.95390781563126, 57.344689378757515, 57.73547094188377, 58.12625250501002, 58.51703406813627, 58.90781563126252, 59.298597194388776, 59.68937875751503, 60.08016032064128, 60.47094188376754, 60.86172344689379, 61.25250501002004, 61.64328657314629, 62.034068136272545, 62.4248496993988, 62.81563126252505, 63.2064128256513, 63.59719438877755, 63.987975951903806, 64.37875751503006, 64.76953907815631, 65.16032064128257, 65.55110220440882, 65.94188376753507, 66.33266533066133, 66.72344689378758, 67.11422845691382, 67.50501002004007, 67.89579158316633, 68.28657314629258, 68.67735470941884, 69.06813627254509, 69.45891783567134, 69.8496993987976, 70.24048096192385, 70.6312625250501, 71.02204408817636, 71.4128256513026, 71.80360721442887, 72.1943887775551, 72.58517034068136, 72.97595190380761, 73.36673346693387, 73.75751503006012, 74.14829659318637, 74.53907815631263, 74.92985971943888, 75.32064128256513, 75.71142284569139, 76.10220440881764, 76.49298597194388, 76.88376753507015, 77.27454909819639, 77.66533066132264, 78.0561122244489, 78.44689378757515, 78.8376753507014, 79.22845691382766, 79.61923847695391, 80.01002004008016, 80.40080160320642, 80.79158316633266, 81.18236472945893, 81.57314629258516, 81.96392785571142, 82.35470941883767, 82.74549098196393, 83.13627254509018, 83.52705410821643, 83.91783567134269, 84.30861723446894, 84.6993987975952, 85.09018036072145, 85.4809619238477, 85.87174348697394, 86.26252505010021, 86.65330661322645, 87.04408817635272, 87.43486973947896, 87.82565130260521, 88.21643286573146, 88.60721442885772, 88.99799599198397, 89.38877755511022, 89.77955911823648, 90.17034068136272, 90.56112224448898, 90.95190380761522, 91.34268537074149, 91.73346693386773, 92.12424849699399, 92.51503006012024, 92.90581162324649, 93.29659318637275, 93.687374749499, 94.07815631262525, 94.4689378757515, 94.85971943887776, 95.250501002004, 95.64128256513027, 96.03206412825651, 96.42284569138278, 96.81362725450902, 97.20440881763527, 97.59519038076152, 97.98597194388778, 98.37675350701403, 98.76753507014028, 99.15831663326654, 99.54909819639278, 99.93987975951904, 100.33066132264528, 100.72144288577155, 101.11222444889779, 101.50300601202404, 101.8937875751503, 102.28456913827655, 102.6753507014028, 103.06613226452906, 103.45691382765531, 103.84769539078155, 104.23847695390782, 104.62925851703406, 105.02004008016033, 105.41082164328657, 105.80160320641284, 106.19238476953907, 106.58316633266533, 106.97394789579158, 107.36472945891784, 107.75551102204409, 108.14629258517034, 108.5370741482966, 108.92785571142284, 109.3186372745491, 109.70941883767534, 110.10020040080161, 110.49098196392785, 110.88176352705412, 111.27254509018036, 111.66332665330661, 112.05410821643287, 112.44488977955912, 112.83567134268537, 113.22645290581163, 113.61723446893788, 114.00801603206412, 114.39879759519039, 114.78957915831663, 115.1803607214429, 115.57114228456913, 115.96192384769539, 116.35270541082164, 116.7434869739479, 117.13426853707415, 117.5250501002004, 117.91583166332666, 118.3066132264529, 118.69739478957916, 119.08817635270542, 119.47895791583166, 119.86973947895791, 120.26052104208416, 120.65130260521042, 121.04208416833667, 121.43286573146293, 121.82364729458918, 122.21442885771543, 122.60521042084169, 122.99599198396794, 123.3867735470942, 123.77755511022045, 124.16833667334669, 124.55911823647294, 124.9498997995992, 125.34068136272545, 125.7314629258517, 126.12224448897796, 126.51302605210421, 126.90380761523046, 127.29458917835672, 127.68537074148297, 128.07615230460922, 128.46693386773546, 128.85771543086173, 129.24849699398797, 129.6392785571142, 130.03006012024048, 130.42084168336675, 130.81162324649299, 131.20240480961922, 131.5931863727455, 131.98396793587176, 132.374749498998, 132.76553106212424, 133.1563126252505, 133.54709418837675, 133.937875751503, 134.32865731462925, 134.71943887775552, 135.11022044088176, 135.501002004008, 135.89178356713427, 136.28256513026054, 136.67334669338678, 137.06412825651302, 137.45490981963928, 137.84569138276555, 138.23647294589176, 138.62725450901803, 139.0180360721443, 139.40881763527054, 139.79959919839678, 140.19038076152304, 140.5811623246493, 140.97194388777555, 141.3627254509018, 141.75350701402806, 142.14428857715433, 142.53507014028057, 142.9258517034068, 143.31663326653307, 143.7074148296593, 144.09819639278555, 144.48897795591182, 144.8797595190381, 145.27054108216433, 145.66132264529057, 146.05210420841684, 146.4428857715431, 146.83366733466934, 147.22444889779558, 147.61523046092185, 148.0060120240481, 148.39679358717433, 148.7875751503006, 149.17835671342687, 149.5691382765531, 149.95991983967934, 150.3507014028056, 150.74148296593188, 151.13226452905812, 151.52304609218436, 151.91382765531063, 152.3046092184369, 152.6953907815631, 153.08617234468937, 153.47695390781564, 153.86773547094188, 154.25851703406812, 154.6492985971944, 155.04008016032066, 155.4308617234469, 155.82164328657313, 156.2124248496994, 156.60320641282567, 156.9939879759519, 157.38476953907815, 157.77555110220442, 158.16633266533066, 158.5571142284569, 158.94789579158316, 159.33867735470943, 159.72945891783567, 160.1202404809619, 160.51102204408818, 160.90180360721445, 161.2925851703407, 161.68336673346693, 162.0741482965932, 162.46492985971943, 162.85571142284567, 163.24649298597194, 163.6372745490982, 164.02805611222445, 164.4188376753507, 164.80961923847696, 165.20040080160322, 165.59118236472946, 165.9819639278557, 166.37274549098197, 166.76352705410824, 167.15430861723445, 167.54509018036072, 167.93587174348698, 168.32665330661322, 168.71743486973946, 169.10821643286573, 169.498997995992, 169.88977955911824, 170.28056112224448, 170.67134268537075, 171.062124248497, 171.45290581162325, 171.8436873747495, 172.23446893787576, 172.625250501002, 173.01603206412824, 173.4068136272545, 173.79759519038078, 174.18837675350701, 174.57915831663325, 174.96993987975952, 175.3607214428858, 175.75150300601203, 176.14228456913827, 176.53306613226454, 176.92384769539078, 177.31462925851702, 177.70541082164328, 178.09619238476955, 178.4869739478958, 178.87775551102203, 179.2685370741483, 179.65931863727457, 180.0501002004008, 180.44088176352705, 180.8316633266533, 181.22244488977955, 181.6132264529058, 182.00400801603206, 182.39478957915833, 182.78557114228457, 183.17635270541084, 183.56713426853707, 183.9579158316633, 184.34869739478958, 184.73947895791582, 185.1302605210421, 185.52104208416833, 185.9118236472946, 186.30260521042084, 186.6933867735471, 187.08416833667334, 187.4749498997996, 187.86573146292585, 188.2565130260521, 188.64729458917836, 189.0380761523046, 189.42885771543087, 189.8196392785571, 190.21042084168337, 190.6012024048096, 190.99198396793588, 191.38276553106212, 191.7735470941884, 192.16432865731463, 192.5551102204409, 192.94589178356713, 193.33667334669337, 193.72745490981964, 194.11823647294588, 194.50901803607215, 194.8997995991984, 195.29058116232466, 195.6813627254509, 196.07214428857716, 196.4629258517034, 196.85370741482967, 197.2444889779559, 197.63527054108218, 198.02605210420842, 198.41683366733466, 198.80761523046093, 199.19839679358716, 199.58917835671343, 199.97995991983967, 200.37074148296594, 200.76152304609218, 201.15230460921845, 201.5430861723447, 201.93386773547095, 202.3246492985972, 202.71543086172343, 203.1062124248497, 203.49699398797594, 203.8877755511022, 204.27855711422845, 204.66933867735472, 205.06012024048096, 205.45090180360722, 205.84168336673346, 206.23246492985973, 206.62324649298597, 207.01402805611224, 207.40480961923848, 207.79559118236472, 208.18637274549098, 208.57715430861722, 208.9679358717435, 209.35871743486973, 209.749498997996, 210.14028056112224, 210.5310621242485, 210.92184368737475, 211.31262525050101, 211.70340681362725, 212.0941883767535, 212.48496993987976, 212.875751503006, 213.26653306613227, 213.6573146292585, 214.04809619238478, 214.43887775551102, 214.82965931863728, 215.22044088176352, 215.6112224448898, 216.00200400801603, 216.3927855711423, 216.78356713426854, 217.17434869739478, 217.56513026052104, 217.95591182364728, 218.34669338677355, 218.7374749498998, 219.12825651302606, 219.5190380761523, 219.90981963927857, 220.3006012024048, 220.69138276553107, 221.0821643286573, 221.47294589178355, 221.86372745490982, 222.25450901803606, 222.64529058116233, 223.03607214428857, 223.42685370741484, 223.81763527054107, 224.20841683366734, 224.59919839679358, 224.98997995991985, 225.3807615230461, 225.77154308617236, 226.1623246492986, 226.55310621242484, 226.9438877755511, 227.33466933867734, 227.7254509018036, 228.11623246492985, 228.50701402805612, 228.89779559118236, 229.28857715430863, 229.67935871743487, 230.07014028056113, 230.46092184368737, 230.85170340681364, 231.24248496993988, 231.63326653306612, 232.0240480961924, 232.41482965931863, 232.8056112224449, 233.19639278557113, 233.5871743486974, 233.97795591182364, 234.3687374749499, 234.75951903807615, 235.15030060120242, 235.54108216432866, 235.9318637274549, 236.32264529058116, 236.7134268537074, 237.10420841683367, 237.4949899799599, 237.88577154308618, 238.27655310621242, 238.6673346693387, 239.05811623246493, 239.4488977955912, 239.83967935871743, 240.2304609218437, 240.62124248496994, 241.01202404809618, 241.40280561122245, 241.7935871743487, 242.18436873747495, 242.5751503006012, 242.96593186372746, 243.3567134268537, 243.74749498997997, 244.1382765531062, 244.52905811623248, 244.91983967935872, 245.31062124248496, 245.70140280561122, 246.09218436873746, 246.48296593186373, 246.87374749498997, 247.26452905811624, 247.65531062124248, 248.04609218436875, 248.43687374749499, 248.82765531062125, 249.2184368737475, 249.60921843687376, 250.0])\n", " .range(['#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff']);\n", " \n", "\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.x = d3.scale.linear()\n", + " color_map_a82f74be030687e32e976618666bf311.x = d3.scale.linear()\n", " .domain([55.0, 250.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.legend = L.control({position: 'topright'});\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.legend.addTo(map_6a955d024552153674a9e969f1da8703);\n", + " color_map_a82f74be030687e32e976618666bf311.legend = L.control({position: 'topright'});\n", + " color_map_a82f74be030687e32e976618666bf311.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_a82f74be030687e32e976618666bf311.legend.addTo(map_c2bb6424cc10afbcd313489a26a2b2f0);\n", "\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.xAxis = d3.svg.axis()\n", - " .scale(color_map_73746c59f5ea7c1aa5113c1382a169ee.x)\n", + " color_map_a82f74be030687e32e976618666bf311.xAxis = d3.svg.axis()\n", + " .scale(color_map_a82f74be030687e32e976618666bf311.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([55.0, '', 94.0, '', 133.0, '', 172.0, '', 211.0, '', 250.0, '']);\n", "\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_a82f74be030687e32e976618666bf311.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.g = color_map_73746c59f5ea7c1aa5113c1382a169ee.svg.append("g")\n", + " color_map_a82f74be030687e32e976618666bf311.g = color_map_a82f74be030687e32e976618666bf311.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.g.selectAll("rect")\n", - " .data(color_map_73746c59f5ea7c1aa5113c1382a169ee.color.range().map(function(d, i) {\n", + " color_map_a82f74be030687e32e976618666bf311.g.selectAll("rect")\n", + " .data(color_map_a82f74be030687e32e976618666bf311.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_73746c59f5ea7c1aa5113c1382a169ee.x(color_map_73746c59f5ea7c1aa5113c1382a169ee.color.domain()[i - 1]) : color_map_73746c59f5ea7c1aa5113c1382a169ee.x.range()[0],\n", - " x1: i < color_map_73746c59f5ea7c1aa5113c1382a169ee.color.domain().length ? color_map_73746c59f5ea7c1aa5113c1382a169ee.x(color_map_73746c59f5ea7c1aa5113c1382a169ee.color.domain()[i]) : color_map_73746c59f5ea7c1aa5113c1382a169ee.x.range()[1],\n", + " x0: i ? color_map_a82f74be030687e32e976618666bf311.x(color_map_a82f74be030687e32e976618666bf311.color.domain()[i - 1]) : color_map_a82f74be030687e32e976618666bf311.x.range()[0],\n", + " x1: i < color_map_a82f74be030687e32e976618666bf311.color.domain().length ? color_map_a82f74be030687e32e976618666bf311.x(color_map_a82f74be030687e32e976618666bf311.color.domain()[i]) : color_map_a82f74be030687e32e976618666bf311.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -8804,7 +8804,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_73746c59f5ea7c1aa5113c1382a169ee.g.call(color_map_73746c59f5ea7c1aa5113c1382a169ee.xAxis).append("text")\n", + " color_map_a82f74be030687e32e976618666bf311.g.call(color_map_a82f74be030687e32e976618666bf311.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -8813,10 +8813,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 23, + "execution_count": 51, "metadata": {}, "output_type": "execute_result" } @@ -8857,7 +8857,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 52, "id": "e1a973b8", "metadata": {}, "outputs": [ @@ -9805,7 +9805,7 @@ "" ] }, - "execution_count": 24, + "execution_count": 52, "metadata": {}, "output_type": "execute_result" } @@ -9853,7 +9853,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 53, "id": "g0zklfvn8i", "metadata": {}, "outputs": [ @@ -10808,7 +10808,7 @@ "" ] }, - "execution_count": 25, + "execution_count": 53, "metadata": {}, "output_type": "execute_result" } @@ -10856,7 +10856,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 54, "id": "gc0d3a4crpj", "metadata": {}, "outputs": [ @@ -11811,7 +11811,7 @@ "" ] }, - "execution_count": 26, + "execution_count": 54, "metadata": {}, "output_type": "execute_result" } @@ -11868,7 +11868,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 55, "id": "9801hkznaop", "metadata": {}, "outputs": [ @@ -11894,7 +11894,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_5c1c68f94a79045dffb00f7e280730df {\n", + " #map_5c87f0e30b281ffaba0b6cffa1af3756 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -11945,7 +11945,7 @@ " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", - " PlanetScope: Greenfield, IA β€” Before & After EF-4 Tornado (May 21, 2024)\n", + " PlanetScope: Greenfield, IA\n", " </div>\n", " \n", " \n", @@ -11999,14 +11999,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_5c1c68f94a79045dffb00f7e280730df" ></div>\n", + " <div class="folium-map" id="map_5c87f0e30b281ffaba0b6cffa1af3756" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_5c1c68f94a79045dffb00f7e280730df = L.map(\n", - " "map_5c1c68f94a79045dffb00f7e280730df",\n", + " var map_5c87f0e30b281ffaba0b6cffa1af3756 = L.map(\n", + " "map_5c87f0e30b281ffaba0b6cffa1af3756",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -12018,13 +12018,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_5c1c68f94a79045dffb00f7e280730df);\n", + " L.control.scale().addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_bc36df6850615169d5d39be0e92d33e2 = L.tileLayer(\n", + " var tile_layer_84d86fb2b333844db7b368a8ad567be1 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -12041,10 +12041,10 @@ " );\n", " \n", " \n", - " tile_layer_bc36df6850615169d5d39be0e92d33e2.addTo(map_5c1c68f94a79045dffb00f7e280730df);\n", + " tile_layer_84d86fb2b333844db7b368a8ad567be1.addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", " \n", " \n", - " var tile_layer_ff1c3d4e917dd25bb7fb4ee8f25e1342 = L.tileLayer(\n", + " var tile_layer_ce9f3ba1a0ee2c063933aff4bd2ebfad = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=3\\u0026bidx=2\\u0026bidx=1\\u0026rescale=0%2C2500\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -12061,10 +12061,10 @@ " );\n", " \n", " \n", - " tile_layer_ff1c3d4e917dd25bb7fb4ee8f25e1342.addTo(map_5c1c68f94a79045dffb00f7e280730df);\n", + " tile_layer_ce9f3ba1a0ee2c063933aff4bd2ebfad.addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", " \n", " \n", - " var tile_layer_d7fcbaef10bd10cc1e002b34fe75d415 = L.tileLayer(\n", + " var tile_layer_cf4c6605318db455e1e8a34578a2b512 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=1\\u0026bidx=2\\u0026bidx=3\\u0026rescale=0%2C255\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -12081,42 +12081,42 @@ " );\n", " \n", " \n", - " tile_layer_d7fcbaef10bd10cc1e002b34fe75d415.addTo(map_5c1c68f94a79045dffb00f7e280730df);\n", + " tile_layer_cf4c6605318db455e1e8a34578a2b512.addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", " \n", " \n", - " var side_by_side_layers_bc19aaec02c4e9ce4ee43ef98e833404 = L.control.sideBySide(\n", - " tile_layer_ff1c3d4e917dd25bb7fb4ee8f25e1342, tile_layer_d7fcbaef10bd10cc1e002b34fe75d415\n", - " ).addTo(map_5c1c68f94a79045dffb00f7e280730df);\n", + " var side_by_side_layers_c32402834046a1b579a1c48ee2e70373 = L.control.sideBySide(\n", + " tile_layer_ce9f3ba1a0ee2c063933aff4bd2ebfad, tile_layer_cf4c6605318db455e1e8a34578a2b512\n", + " ).addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", " \n", " \n", - " var layer_control_488c340c66d549fa1975b563ab2b4ef1_layers = {\n", + " var layer_control_4673364cb0d7c7f9d72282d81176b7c5_layers = {\n", " base_layers : {\n", - " "CartoDB Positron" : tile_layer_bc36df6850615169d5d39be0e92d33e2,\n", + " "CartoDB Positron" : tile_layer_84d86fb2b333844db7b368a8ad567be1,\n", " },\n", " overlays : {\n", - " "PlanetScope Pre-Tornado" : tile_layer_ff1c3d4e917dd25bb7fb4ee8f25e1342,\n", - " "PlanetScope Post-Tornado" : tile_layer_d7fcbaef10bd10cc1e002b34fe75d415,\n", + " "PlanetScope Pre-Tornado" : tile_layer_ce9f3ba1a0ee2c063933aff4bd2ebfad,\n", + " "PlanetScope Post-Tornado" : tile_layer_cf4c6605318db455e1e8a34578a2b512,\n", " },\n", " };\n", - " let layer_control_488c340c66d549fa1975b563ab2b4ef1 = L.control.layers(\n", - " layer_control_488c340c66d549fa1975b563ab2b4ef1_layers.base_layers,\n", - " layer_control_488c340c66d549fa1975b563ab2b4ef1_layers.overlays,\n", + " let layer_control_4673364cb0d7c7f9d72282d81176b7c5 = L.control.layers(\n", + " layer_control_4673364cb0d7c7f9d72282d81176b7c5_layers.base_layers,\n", + " layer_control_4673364cb0d7c7f9d72282d81176b7c5_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_5c1c68f94a79045dffb00f7e280730df);\n", + " ).addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 27, + "execution_count": 55, "metadata": {}, "output_type": "execute_result" } @@ -12156,7 +12156,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 56, "id": "7bd64da5-fdb4-44d8-a0dc-3ed4b1160a12", "metadata": {}, "outputs": [], From 534fb3df2d0db3ca2d63e27c6ab5dd89ad49ec24 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 15 Aug 2025 18:12:33 -0500 Subject: [PATCH 10/28] remove importlib --- .../stories/tornadoes_2024_notebook.ipynb | 22 ------------------- 1 file changed, 22 deletions(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 91866edb..05a0d4ee 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -85,28 +85,6 @@ "import folium" ] }, - { - "cell_type": "code", - "execution_count": 30, - "id": "1aafe340", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 30, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import importlib\n", - "importlib.reload(putils)" - ] - }, { "cell_type": "code", "execution_count": 31, From 7751ae1e8755dbc3985513281def3fa11028cb77 Mon Sep 17 00:00:00 2001 From: Andrew Blackford <62357205+acblackford@users.noreply.github.com> Date: Wed, 20 Aug 2025 10:10:22 -0500 Subject: [PATCH 11/28] tended to review comments - updates to tornadoes notebook --- .../stories/tornadoes_2024_notebook.ipynb | 3675 ++++------------- 1 file changed, 908 insertions(+), 2767 deletions(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 05a0d4ee..0973812a 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -65,15 +65,40 @@ "## Environment Setup" ] }, + { + "cell_type": "markdown", + "id": "73d80ca5-39e1-4b97-b1cd-50aabea1f311", + "metadata": {}, + "source": [ + "If running this notebook outside of the VEDA JupyterHub, install the following packages:" + ] + }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 1, + "id": "c5281e69-5900-4204-a249-b05510df0576", + "metadata": {}, + "outputs": [], + "source": [ + "#!pip install -q earthaccess pandas xarray fsspec requests branca pystac_client matplotlib" + ] + }, + { + "cell_type": "markdown", + "id": "8dcbd07a-e677-4484-8ed8-b48c4e8cfd67", + "metadata": {}, + "source": [ + "Import the necessary libraries used to run this notebook." + ] + }, + { + "cell_type": "code", + "execution_count": 2, "id": "fbad9700-ce5d-4210-9c58-f9204917b7ab", "metadata": {}, "outputs": [], "source": [ "# Load libraries\n", - "#!pip install -q earthaccess pandas xarray fsspec requests branca pystac_client matplotlib\n", "\n", "import glob\n", "import os\n", @@ -87,7 +112,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 3, "id": "8fc9234c-975b-485d-bfb3-d9100ff3b12d", "metadata": {}, "outputs": [], @@ -105,6 +130,8 @@ "id": "6b9c9d7d-f5cc-49e7-b58a-8c7bb5b9d751", "metadata": {}, "source": [ + "#### The VEDA Data Story on the 2024 Hyperactive Tornado Season can be found [_**HERE**_](https://www.earthdata.nasa.gov/dashboard/stories/2024-tornadoes)\n", + "\n", "## Overview\n", "\n", "The Spring 2024 tornado season was one of the most active on record in the United States. As of May 31st, there were 1,176 tornadoes confirmed in the United States. The vast majority of these occurred in the meteorological spring months of March-May, placing this period within the 90th percentile of activity compared to climatological averages. This three-month period was responsible for 36 fatalities, hundreds of injuries, and was the second most prolific tornado season since at least 1950–second only to the deadly 2011 tornado season. Through the end of May, severe thunderstorms alone accounted for nearly 42 billion dollars (USD) in damage across the United States, with four tornado outbreaks during the spring attributing over $1 billion in damage each. Four tornadoes were rated violent EF-4s on the Enhanced Fujita Scale with wind speeds from 166-200 mph, and 27 were rated as intense EF-3s with wind speeds from 136-165 mph.\n", @@ -125,7 +152,7 @@ "id": "72e56206-4827-4ac2-bbaf-62d8bf6bd234", "metadata": {}, "source": [ - "This example pulls tornado paths from March-May 2024 via the VEDA STAC catalog and visualize. These tornado tracks were rasterized from the NWS Damage Assessment Toolkit (DAT), which is a geographic information system (GIS)-hosted dataset where post-storm damage survey results are uploaded and referenced to the location where each description of damage occurred. This dataset includes center lines of all tornado tracks, polygons that break down the EF rating at each point along the path, descriptions of the damage at each survey location, and ground damage pictures of the damage at most entry points.\n" + "This example pulls tornado paths from March-May 2024 via the VEDA STAC catalog and visualizes them. These tornado tracks were rasterized from the NWS Damage Assessment Toolkit (DAT), which is a geographic information system (GIS)-hosted dataset where post-storm damage survey results are uploaded and referenced to the location where each description of damage occurred. This dataset includes center lines of all tornado tracks, polygons that break down the EF rating at each point along the path, descriptions of the damage at each survey location, and ground damage pictures of the damage at most entry points.\n" ] }, { @@ -134,7 +161,7 @@ "metadata": {}, "source": [ "## Processing steps:\n", - "1.) Choose STAC catalog ID and date
\n", + "1.) Choose collection ID from the STAC catalog and date for analysis
\n", "2.) Retrieve collection information and items from VEDA STAC catalog
\n", "3.) Retrieve item statistics and tiling information
\n", "4.) Plot data
" @@ -150,7 +177,7 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 4, "id": "f1ef497a-4fa7-499c-8237-21f4cad1d45b", "metadata": {}, "outputs": [ @@ -1008,13 +1035,12 @@ "" ] }, - "execution_count": 32, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-paths\"\n", "date = \"2024-05-31\"\n", "\n", @@ -1039,7 +1065,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 5, "id": "b3bafa71-607c-49cc-9e5f-8f3d2f882410", "metadata": {}, "outputs": [ @@ -1079,7 +1105,7 @@ }, { "cell_type": "code", - "execution_count": 34, + "execution_count": 6, "id": "9d17e195", "metadata": {}, "outputs": [ @@ -1094,7 +1120,7 @@ " None: 'No basemap (transparent background)'}" ] }, - "execution_count": 34, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -1107,7 +1133,7 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 8, "id": "9af1c710-0423-4d3e-9c93-4fff13d1dab5", "metadata": {}, "outputs": [ @@ -1133,7 +1159,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_128ce988162f593ff19fc23d663dd24b {\n", + " #map_506f4a4619318c7e81895138efa802ad {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -1186,7 +1212,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_128ce988162f593ff19fc23d663dd24b" ></div>\n", + " <div class="folium-map" id="map_506f4a4619318c7e81895138efa802ad" ></div>\n", " \n", " \n", " <div style="\n", @@ -1287,26 +1313,26 @@ "<script>\n", " \n", " \n", - " var map_128ce988162f593ff19fc23d663dd24b = L.map(\n", - " "map_128ce988162f593ff19fc23d663dd24b",\n", + " var map_506f4a4619318c7e81895138efa802ad = L.map(\n", + " "map_506f4a4619318c7e81895138efa802ad",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", " ...{\n", - " "zoom": 10,\n", + " "zoom": 9,\n", " "zoomControl": true,\n", " "preferCanvas": false,\n", "}\n", "\n", " }\n", " );\n", - " L.control.scale().addTo(map_128ce988162f593ff19fc23d663dd24b);\n", + " L.control.scale().addTo(map_506f4a4619318c7e81895138efa802ad);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_1b4c8bb4625db47652544436a7779220 = L.tileLayer(\n", + " var tile_layer_edc88e7a8044310f264c4407c4dd6b03 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1323,10 +1349,10 @@ " );\n", " \n", " \n", - " tile_layer_1b4c8bb4625db47652544436a7779220.addTo(map_128ce988162f593ff19fc23d663dd24b);\n", + " tile_layer_edc88e7a8044310f264c4407c4dd6b03.addTo(map_506f4a4619318c7e81895138efa802ad);\n", " \n", " \n", - " var tile_layer_99620c941e8a8139b13115f57b72b9f5 = L.tileLayer(\n", + " var tile_layer_4451184b510b6dd9b8fad4c5618325b1 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1343,10 +1369,10 @@ " );\n", " \n", " \n", - " tile_layer_99620c941e8a8139b13115f57b72b9f5.addTo(map_128ce988162f593ff19fc23d663dd24b);\n", + " tile_layer_4451184b510b6dd9b8fad4c5618325b1.addTo(map_506f4a4619318c7e81895138efa802ad);\n", " \n", " \n", - " var tile_layer_d3d384c1b278d53b7b3c8412eb69d5c1 = L.tileLayer(\n", + " var tile_layer_7bcb35a4d857e66c0646f8a75cbb188b = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -1363,37 +1389,37 @@ " );\n", " \n", " \n", - " tile_layer_d3d384c1b278d53b7b3c8412eb69d5c1.addTo(map_128ce988162f593ff19fc23d663dd24b);\n", + " tile_layer_7bcb35a4d857e66c0646f8a75cbb188b.addTo(map_506f4a4619318c7e81895138efa802ad);\n", " \n", " \n", - " var layer_control_2103966baa0818da475e35c126b15826_layers = {\n", + " var layer_control_a873b097d3b871a7e256131ce821bcc7_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_1b4c8bb4625db47652544436a7779220,\n", + " "ESRI Satellite" : tile_layer_edc88e7a8044310f264c4407c4dd6b03,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_99620c941e8a8139b13115f57b72b9f5,\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_d3d384c1b278d53b7b3c8412eb69d5c1,\n", + " "Place Labels" : tile_layer_4451184b510b6dd9b8fad4c5618325b1,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_7bcb35a4d857e66c0646f8a75cbb188b,\n", " },\n", " };\n", - " let layer_control_2103966baa0818da475e35c126b15826 = L.control.layers(\n", - " layer_control_2103966baa0818da475e35c126b15826_layers.base_layers,\n", - " layer_control_2103966baa0818da475e35c126b15826_layers.overlays,\n", + " let layer_control_a873b097d3b871a7e256131ce821bcc7 = L.control.layers(\n", + " layer_control_a873b097d3b871a7e256131ce821bcc7_layers.base_layers,\n", + " layer_control_a873b097d3b871a7e256131ce821bcc7_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_128ce988162f593ff19fc23d663dd24b);\n", + " ).addTo(map_506f4a4619318c7e81895138efa802ad);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 35, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -1429,7 +1455,7 @@ "m = putils.plot_folium_from_VEDA_STAC(\n", " tiles_url_template=tiles[\"tiles\"][0],\n", " center_coords=[41.31, -94.46],\n", - " zoom_level=10,\n", + " zoom_level=9,\n", " rescale=(vmin, vmax),\n", " colormap_name='tornado_ef_scale',\n", " custom_colors=ef_categories,\n", @@ -1461,7 +1487,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 9, "id": "965db310-ee99-4af3-96a8-00e63854351d", "metadata": {}, "outputs": [ @@ -2339,13 +2365,12 @@ "" ] }, - "execution_count": 36, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# TODO: Change collection_ID and date\n", "collection_id = \"tornadoes-2024-polygons\"\n", "date = \"2024-05-31\"\n", "\n", @@ -2370,7 +2395,7 @@ }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 10, "id": "bdba0ec8-aced-4a16-a5ad-e261aa586cfd", "metadata": {}, "outputs": [ @@ -2390,7 +2415,7 @@ " 'center': [-88.34727736513193, 37.42233953352921, 0]}" ] }, - "execution_count": 37, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -2417,7 +2442,7 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 11, "id": "f6183652-36ca-4d4f-af4e-41070e813092", "metadata": {}, "outputs": [ @@ -2443,7 +2468,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_2b2e6fb045a8d076ff6445418e57b3f7 {\n", + " #map_8fc3de809379d6c5df90e6e48e8b0fc1 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -2496,7 +2521,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_2b2e6fb045a8d076ff6445418e57b3f7" ></div>\n", + " <div class="folium-map" id="map_8fc3de809379d6c5df90e6e48e8b0fc1" ></div>\n", " \n", " \n", " <div style="\n", @@ -2597,26 +2622,26 @@ "<script>\n", " \n", " \n", - " var map_2b2e6fb045a8d076ff6445418e57b3f7 = L.map(\n", - " "map_2b2e6fb045a8d076ff6445418e57b3f7",\n", + " var map_8fc3de809379d6c5df90e6e48e8b0fc1 = L.map(\n", + " "map_8fc3de809379d6c5df90e6e48e8b0fc1",\n", " {\n", - " center: [40.5, -84.05],\n", + " center: [40.3, -84.05],\n", " crs: L.CRS.EPSG3857,\n", " ...{\n", - " "zoom": 12,\n", + " "zoom": 10.25,\n", " "zoomControl": true,\n", " "preferCanvas": false,\n", "}\n", "\n", " }\n", " );\n", - " L.control.scale().addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", + " L.control.scale().addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_607c23057626d2ac0e686a19268d8736 = L.tileLayer(\n", + " var tile_layer_15cb9f6ad8876ed0192b1302f38d77a5 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2633,10 +2658,10 @@ " );\n", " \n", " \n", - " tile_layer_607c23057626d2ac0e686a19268d8736.addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", + " tile_layer_15cb9f6ad8876ed0192b1302f38d77a5.addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", " \n", " \n", - " var tile_layer_6bbac6235da4cce03bf910a8fd9d895b = L.tileLayer(\n", + " var tile_layer_027f40c29369edbf4c87a0e1d3dbb9b6 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2653,10 +2678,10 @@ " );\n", " \n", " \n", - " tile_layer_6bbac6235da4cce03bf910a8fd9d895b.addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", + " tile_layer_027f40c29369edbf4c87a0e1d3dbb9b6.addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", " \n", " \n", - " var tile_layer_d68ffb5de1b35982c3d06dc2caa281cb = L.tileLayer(\n", + " var tile_layer_b651dd4aa14a5daadd1fd53934f7755a = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -2673,37 +2698,37 @@ " );\n", " \n", " \n", - " tile_layer_d68ffb5de1b35982c3d06dc2caa281cb.addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", + " tile_layer_b651dd4aa14a5daadd1fd53934f7755a.addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", " \n", " \n", - " var layer_control_2baf71acb8b604070200e4b1646dc660_layers = {\n", + " var layer_control_14603dfcf62606cf94c4c73a02eeeeb9_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_607c23057626d2ac0e686a19268d8736,\n", + " "ESRI Satellite" : tile_layer_15cb9f6ad8876ed0192b1302f38d77a5,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_6bbac6235da4cce03bf910a8fd9d895b,\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_d68ffb5de1b35982c3d06dc2caa281cb,\n", + " "Place Labels" : tile_layer_027f40c29369edbf4c87a0e1d3dbb9b6,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_b651dd4aa14a5daadd1fd53934f7755a,\n", " },\n", " };\n", - " let layer_control_2baf71acb8b604070200e4b1646dc660 = L.control.layers(\n", - " layer_control_2baf71acb8b604070200e4b1646dc660_layers.base_layers,\n", - " layer_control_2baf71acb8b604070200e4b1646dc660_layers.overlays,\n", + " let layer_control_14603dfcf62606cf94c4c73a02eeeeb9 = L.control.layers(\n", + " layer_control_14603dfcf62606cf94c4c73a02eeeeb9_layers.base_layers,\n", + " layer_control_14603dfcf62606cf94c4c73a02eeeeb9_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_2b2e6fb045a8d076ff6445418e57b3f7);\n", + " ).addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 38, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } @@ -2713,8 +2738,8 @@ "# NOTE: Not passing rescale for discrete data\n", "m = putils.plot_folium_from_VEDA_STAC(\n", " tiles_url_template=tiles[\"tiles\"][0],\n", - " center_coords=[40.50, -84.05],\n", - " zoom_level=12,\n", + " center_coords=[40.30, -84.05],\n", + " zoom_level=10.25,\n", " rescale=(vmin, vmax),\n", " colormap_name='tornado_ef_scale',\n", " custom_colors=ef_categories,\n", @@ -2754,7 +2779,7 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 12, "id": "d55ccd28-c8ba-47cf-bfd3-03c3a8cd5beb", "metadata": {}, "outputs": [ @@ -3685,13 +3710,12 @@ "" ] }, - "execution_count": 39, + "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# TODO: Change collection_ID and date\n", "collection_id = \"lakeview-nightlights-tornadoes-2024\"\n", "date = \"2024-03-14\"\n", "\n", @@ -3715,7 +3739,7 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": 13, "id": "6b3f9709-09bc-43ef-b3fd-d89f3c0cd5e9", "metadata": {}, "outputs": [ @@ -3729,7 +3753,6 @@ ], "source": [ "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "#colormap_name = \"tornado_ef_scale\"\n", "colormap_name = \"bwr\"\n", "\n", "# Build endpoint URL without worrying about trailing slashes\n", @@ -3749,7 +3772,7 @@ }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 16, "id": "f283977b-e862-4f2d-9032-414d974a35b4", "metadata": {}, "outputs": [ @@ -3782,7 +3805,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_1c77a77493a799d04bcf7b0bcd5afac8 {\n", + " #map_6d53fbbaad162eaab379a276c506f12b {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -3832,18 +3855,18 @@ " padding: 4px 8px;\n", " border-radius: 4px;\n", " ">\n", - " Black Marble Nightlights β€” March 14, 2024\n", + " Black Marble Nightlights (Indian Lake, OH) β€” March 14, 2024\n", " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_1c77a77493a799d04bcf7b0bcd5afac8" ></div>\n", + " <div class="folium-map" id="map_6d53fbbaad162eaab379a276c506f12b" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_1c77a77493a799d04bcf7b0bcd5afac8 = L.map(\n", - " "map_1c77a77493a799d04bcf7b0bcd5afac8",\n", + " var map_6d53fbbaad162eaab379a276c506f12b = L.map(\n", + " "map_6d53fbbaad162eaab379a276c506f12b",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -3855,13 +3878,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", + " L.control.scale().addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_93cf1ff77eaf426719e86f762cdd43c3 = L.tileLayer(\n", + " var tile_layer_58eae38b7fd3d971f5ff01340d65f604 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -3878,17 +3901,17 @@ " );\n", " \n", " \n", - " tile_layer_93cf1ff77eaf426719e86f762cdd43c3.addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", + " tile_layer_58eae38b7fd3d971f5ff01340d65f604.addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", " \n", " \n", - " var tile_layer_eba5a7255c6264596501dc61880bab16 = L.tileLayer(\n", + " var tile_layer_4c19f3d5a994f154008bc39b12206271 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", " "maxZoom": 18,\n", " "maxNativeZoom": 18,\n", " "noWrap": false,\n", - " "attribution": "VEDA Black Marble Nightlights",\n", + " "attribution": "VEDA Black Marble Nightlights (Indian Lake, OH)",\n", " "subdomains": "abc",\n", " "detectRetina": false,\n", " "tms": false,\n", @@ -3898,66 +3921,66 @@ " );\n", " \n", " \n", - " tile_layer_eba5a7255c6264596501dc61880bab16.addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", + " tile_layer_4c19f3d5a994f154008bc39b12206271.addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", " \n", " \n", - " var layer_control_5646950ec3f4c491731d0227637de9e5_layers = {\n", + " var layer_control_981a82552d111265b84f99e01ba937b4_layers = {\n", " base_layers : {\n", - " "CartoDB Dark" : tile_layer_93cf1ff77eaf426719e86f762cdd43c3,\n", + " "CartoDB Dark" : tile_layer_58eae38b7fd3d971f5ff01340d65f604,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights" : tile_layer_eba5a7255c6264596501dc61880bab16,\n", + " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_4c19f3d5a994f154008bc39b12206271,\n", " },\n", " };\n", - " let layer_control_5646950ec3f4c491731d0227637de9e5 = L.control.layers(\n", - " layer_control_5646950ec3f4c491731d0227637de9e5_layers.base_layers,\n", - " layer_control_5646950ec3f4c491731d0227637de9e5_layers.overlays,\n", + " let layer_control_981a82552d111265b84f99e01ba937b4 = L.control.layers(\n", + " layer_control_981a82552d111265b84f99e01ba937b4_layers.base_layers,\n", + " layer_control_981a82552d111265b84f99e01ba937b4_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", + " ).addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", "\n", " \n", " \n", - " var color_map_46ba6a2ac626b757b5d014ea9757a1a0 = {};\n", + " var color_map_4f049356591415c6df8ce4c6950d13b1 = {};\n", "\n", " \n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.color = d3.scale.threshold()\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.color = d3.scale.threshold()\n", " .domain([-150.0, -149.3987975951904, -148.79759519038078, -148.19639278557113, -147.59519038076152, -146.9939879759519, -146.3927855711423, -145.79158316633266, -145.19038076152304, -144.58917835671343, -143.98797595190382, -143.38677354709418, -142.78557114228457, -142.18436873747495, -141.58316633266534, -140.9819639278557, -140.3807615230461, -139.77955911823648, -139.17835671342687, -138.57715430861722, -137.9759519038076, -137.374749498998, -136.7735470941884, -136.17234468937875, -135.57114228456913, -134.96993987975952, -134.3687374749499, -133.76753507014027, -133.16633266533066, -132.56513026052104, -131.96392785571143, -131.3627254509018, -130.76152304609218, -130.16032064128257, -129.55911823647295, -128.95791583166334, -128.3567134268537, -127.75551102204409, -127.15430861723448, -126.55310621242485, -125.95190380761522, -125.35070140280561, -124.749498997996, -124.14829659318637, -123.54709418837675, -122.94589178356713, -122.34468937875752, -121.7434869739479, -121.14228456913827, -120.54108216432866, -119.93987975951904, -119.33867735470942, -118.73747494989979, -118.13627254509018, -117.53507014028057, -116.93386773547094, -116.33266533066131, -115.7314629258517, -115.13026052104209, -114.52905811623246, -113.92785571142284, -113.32665330661322, -112.72545090180361, -112.12424849699399, -111.52304609218436, -110.92184368737475, -110.32064128256513, -109.71943887775551, -109.11823647294588, -108.51703406813627, -107.91583166332666, -107.31462925851704, -106.71342685370742, -106.11222444889779, -105.51102204408818, -104.90981963927857, -104.30861723446894, -103.70741482965931, -103.1062124248497, -102.50501002004009, -101.90380761523046, -101.30260521042084, -100.70140280561122, -100.10020040080161, -99.49899799599199, -98.89779559118236, -98.29659318637275, -97.69539078156313, -97.09418837675351, -96.49298597194388, -95.89178356713427, -95.29058116232466, -94.68937875751503, -94.0881763527054, -93.48697394789579, -92.88577154308618, -92.28456913827655, -91.68336673346693, -91.08216432865731, -90.4809619238477, -89.87975951903807, -89.27855711422845, -88.67735470941884, -88.07615230460922, -87.4749498997996, -86.87374749498997, -86.27254509018036, -85.67134268537075, -85.07014028056112, -84.46893787575151, -83.86773547094188, -83.26653306613227, -82.66533066132264, -82.06412825651303, -81.4629258517034, -80.86172344689379, -80.26052104208416, -79.65931863727455, -79.05811623246493, -78.45691382765531, -77.85571142284569, -77.25450901803607, -76.65330661322645, -76.05210420841684, -75.45090180360721, -74.8496993987976, -74.24849699398797, -73.64729458917836, -73.04609218436873, -72.44488977955912, -71.84368737474949, -71.24248496993988, -70.64128256513025, -70.04008016032064, -69.43887775551102, -68.8376753507014, -68.23647294589178, -67.63527054108216, -67.03406813627255, -66.43286573146293, -65.83166332665331, -65.23046092184369, -64.62925851703407, -64.02805611222445, -63.426853707414836, -62.82565130260521, -62.2244488977956, -61.62324649298597, -61.02204408817636, -60.42084168336673, -59.81963927855712, -59.21843687374749, -58.61723446893788, -58.016032064128254, -57.41482965931864, -56.813627254509015, -56.2124248496994, -55.611222444889776, -55.010020040080164, -54.40881763527054, -53.807615230460925, -53.2064128256513, -52.605210420841686, -52.00400801603206, -51.40280561122245, -50.80160320641282, -50.20040080160321, -49.59919839679358, -48.99799599198397, -48.39679358717434, -47.79559118236473, -47.194388777555105, -46.59318637274549, -45.991983967935866, -45.390781563126254, -44.78957915831663, -44.188376753507015, -43.58717434869739, -42.985971943887776, -42.38476953907815, -41.78356713426854, -41.18236472945891, -40.5811623246493, -39.979959919839686, -39.37875751503006, -38.77755511022045, -38.17635270541082, -37.57515030060121, -36.97394789579158, -36.37274549098197, -35.77154308617234, -35.17034068136273, -34.569138276553105, -33.96793587174349, -33.366733466933866, -32.76553106212425, -32.16432865731463, -31.563126252505015, -30.961923847695388, -30.360721442885776, -29.75951903807615, -29.158316633266537, -28.55711422845691, -27.9559118236473, -27.354709418837672, -26.75350701402806, -26.152304609218433, -25.55110220440882, -24.949899799599194, -24.348697394789582, -23.747494989979955, -23.146292585170343, -22.545090180360717, -21.943887775551104, -21.342685370741492, -20.74148296593185, -20.14028056112224, -19.539078156312627, -18.937875751503014, -18.336673346693374, -17.73547094188376, -17.13426853707415, -16.533066132264537, -15.931863727454896, -15.330661322645284, -14.729458917835672, -14.12825651302606, -13.527054108216447, -12.925851703406806, -12.324649298597194, -11.723446893787582, -11.12224448897797, -10.521042084168329, -9.919839679358716, -9.318637274549104, -8.717434869739492, -8.116232464929851, -7.515030060120239, -6.913827655310627, -6.312625250501014, -5.711422845691374, -5.110220440881761, -4.509018036072149, -3.9078156312625367, -3.306613226452896, -2.7054108216432837, -2.1042084168336714, -1.5030060120240591, -0.9018036072144184, -0.30060120240480614, 0.30060120240480614, 0.9018036072144184, 1.5030060120240591, 2.1042084168336714, 2.7054108216432837, 3.306613226452896, 3.9078156312625367, 4.509018036072149, 5.110220440881761, 5.711422845691374, 6.312625250501014, 6.913827655310627, 7.515030060120239, 8.116232464929851, 8.717434869739492, 9.318637274549104, 9.919839679358716, 10.521042084168329, 11.12224448897797, 11.723446893787582, 12.324649298597194, 12.925851703406806, 13.527054108216447, 14.12825651302606, 14.729458917835672, 15.330661322645284, 15.931863727454896, 16.533066132264537, 17.13426853707415, 17.73547094188376, 18.336673346693374, 18.937875751503014, 19.539078156312627, 20.14028056112224, 20.74148296593185, 21.342685370741492, 21.943887775551104, 22.545090180360717, 23.14629258517033, 23.74749498997997, 24.348697394789582, 24.949899799599194, 25.551102204408807, 26.152304609218447, 26.75350701402806, 27.354709418837672, 27.955911823647284, 28.557114228456925, 29.158316633266537, 29.75951903807615, 30.36072144288576, 30.961923847695402, 31.563126252505015, 32.16432865731463, 32.76553106212424, 33.36673346693388, 33.96793587174349, 34.569138276553105, 35.17034068136272, 35.77154308617236, 36.37274549098197, 36.97394789579158, 37.575150300601194, 38.176352705410835, 38.77755511022045, 39.37875751503006, 39.97995991983967, 40.58116232464931, 41.182364729458925, 41.78356713426854, 42.38476953907815, 42.98597194388776, 43.5871743486974, 44.188376753507015, 44.78957915831663, 45.39078156312624, 45.99198396793588, 46.59318637274549, 47.194388777555105, 47.79559118236472, 48.39679358717436, 48.99799599198397, 49.59919839679358, 50.200400801603195, 50.801603206412835, 51.40280561122245, 52.00400801603206, 52.60521042084167, 53.20641282565131, 53.807615230460925, 54.40881763527054, 55.01002004008015, 55.61122244488979, 56.2124248496994, 56.813627254509015, 57.41482965931863, 58.01603206412827, 58.61723446893788, 59.21843687374749, 59.819639278557105, 60.420841683366746, 61.02204408817636, 61.62324649298597, 62.22444889779558, 62.82565130260522, 63.426853707414836, 64.02805611222445, 64.62925851703406, 65.2304609218437, 65.83166332665331, 66.43286573146293, 67.03406813627254, 67.63527054108218, 68.23647294589179, 68.8376753507014, 69.43887775551102, 70.04008016032063, 70.64128256513027, 71.24248496993988, 71.84368737474949, 72.4448897795591, 73.04609218436875, 73.64729458917836, 74.24849699398797, 74.84969939879758, 75.45090180360722, 76.05210420841684, 76.65330661322645, 77.25450901803606, 77.8557114228457, 78.45691382765531, 79.05811623246493, 79.65931863727454, 80.26052104208418, 80.86172344689379, 81.4629258517034, 82.06412825651302, 82.66533066132266, 83.26653306613227, 83.86773547094188, 84.4689378757515, 85.07014028056113, 85.67134268537075, 86.27254509018036, 86.87374749498997, 87.47494989979961, 88.07615230460922, 88.67735470941884, 89.27855711422845, 89.87975951903809, 90.4809619238477, 91.08216432865731, 91.68336673346693, 92.28456913827657, 92.88577154308618, 93.48697394789579, 94.0881763527054, 94.68937875751504, 95.29058116232466, 95.89178356713427, 96.49298597194388, 97.0941883767535, 97.69539078156313, 98.29659318637275, 98.89779559118236, 99.49899799599197, 100.10020040080161, 100.70140280561122, 101.30260521042084, 101.90380761523045, 102.50501002004009, 103.1062124248497, 103.70741482965931, 104.30861723446893, 104.90981963927857, 105.51102204408818, 106.11222444889779, 106.7134268537074, 107.31462925851702, 107.91583166332663, 108.5170340681363, 109.11823647294591, 109.71943887775552, 110.32064128256513, 110.92184368737475, 111.52304609218436, 112.12424849699397, 112.72545090180358, 113.32665330661325, 113.92785571142286, 114.52905811623248, 115.13026052104209, 115.7314629258517, 116.33266533066131, 116.93386773547093, 117.53507014028054, 118.13627254509021, 118.73747494989982, 119.33867735470943, 119.93987975951904, 120.54108216432866, 121.14228456913827, 121.74348697394788, 122.3446893787575, 122.9458917835671, 123.54709418837678, 124.14829659318639, 124.749498997996, 125.35070140280561, 125.95190380761522, 126.55310621242484, 127.15430861723445, 127.75551102204406, 128.35671342685373, 128.95791583166334, 129.55911823647295, 130.16032064128257, 130.76152304609218, 131.3627254509018, 131.9639278557114, 132.56513026052102, 133.16633266533069, 133.7675350701403, 134.3687374749499, 134.96993987975952, 135.57114228456913, 136.17234468937875, 136.77354709418836, 137.37474949899797, 137.97595190380764, 138.57715430861725, 139.17835671342687, 139.77955911823648, 140.3807615230461, 140.9819639278557, 141.58316633266531, 142.18436873747493, 142.7855711422846, 143.3867735470942, 143.98797595190382, 144.58917835671343, 145.19038076152304, 145.79158316633266, 146.39278557114227, 146.99398797595188, 147.59519038076155, 148.19639278557116, 148.79759519038078, 149.3987975951904, 150.0])\n", " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", " \n", "\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.x = d3.scale.linear()\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.x = d3.scale.linear()\n", " .domain([-150.0, 150.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.legend = L.control({position: 'topright'});\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.legend.addTo(map_1c77a77493a799d04bcf7b0bcd5afac8);\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.legend = L.control({position: 'topright'});\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.legend.addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", "\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.xAxis = d3.svg.axis()\n", - " .scale(color_map_46ba6a2ac626b757b5d014ea9757a1a0.x)\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.xAxis = d3.svg.axis()\n", + " .scale(color_map_4f049356591415c6df8ce4c6950d13b1.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([-150.0, '', -90.0, '', -30.0, '', 30.0, '', 90.0, '', 150.0, '']);\n", "\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.g = color_map_46ba6a2ac626b757b5d014ea9757a1a0.svg.append("g")\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.g = color_map_4f049356591415c6df8ce4c6950d13b1.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.g.selectAll("rect")\n", - " .data(color_map_46ba6a2ac626b757b5d014ea9757a1a0.color.range().map(function(d, i) {\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.g.selectAll("rect")\n", + " .data(color_map_4f049356591415c6df8ce4c6950d13b1.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_46ba6a2ac626b757b5d014ea9757a1a0.x(color_map_46ba6a2ac626b757b5d014ea9757a1a0.color.domain()[i - 1]) : color_map_46ba6a2ac626b757b5d014ea9757a1a0.x.range()[0],\n", - " x1: i < color_map_46ba6a2ac626b757b5d014ea9757a1a0.color.domain().length ? color_map_46ba6a2ac626b757b5d014ea9757a1a0.x(color_map_46ba6a2ac626b757b5d014ea9757a1a0.color.domain()[i]) : color_map_46ba6a2ac626b757b5d014ea9757a1a0.x.range()[1],\n", + " x0: i ? color_map_4f049356591415c6df8ce4c6950d13b1.x(color_map_4f049356591415c6df8ce4c6950d13b1.color.domain()[i - 1]) : color_map_4f049356591415c6df8ce4c6950d13b1.x.range()[0],\n", + " x1: i < color_map_4f049356591415c6df8ce4c6950d13b1.color.domain().length ? color_map_4f049356591415c6df8ce4c6950d13b1.x(color_map_4f049356591415c6df8ce4c6950d13b1.color.domain()[i]) : color_map_4f049356591415c6df8ce4c6950d13b1.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -3967,7 +3990,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_46ba6a2ac626b757b5d014ea9757a1a0.g.call(color_map_46ba6a2ac626b757b5d014ea9757a1a0.xAxis).append("text")\n", + " color_map_4f049356591415c6df8ce4c6950d13b1.g.call(color_map_4f049356591415c6df8ce4c6950d13b1.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -3976,10 +3999,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 41, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } @@ -3993,11 +4016,11 @@ " rescale=(vmin, vmax),\n", " colormap_name=colormap_name,\n", " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", - " layer_name=\"Black Marble Nightlights\",\n", + " layer_name=\"Black Marble Nightlights (Indian Lake, OH)\",\n", " date=f\"{date}T00:00:00Z\",\n", " colorbar_caption=\"Artificial Light\",\n", - " attribution=\"VEDA Black Marble Nightlights\",\n", - " tile_name=\"Black Marble Nightlights\",\n", + " attribution=\"VEDA Black Marble Nightlights (Indian Lake, OH)\",\n", + " tile_name=\"Black Marble Nightlights (Indian Lake, OH)\",\n", " opacity=0.8,\n", " height=\"800px\",\n", " basemap_style=\"cartodb-dark\" # Use dark basemap for better nightlight visibility\n", @@ -4031,7 +4054,7 @@ }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 38, "id": "7213b9f2-8444-462b-a994-3e8cbb6beed2", "metadata": {}, "outputs": [], @@ -4091,7 +4114,7 @@ }, { "cell_type": "code", - "execution_count": 43, + "execution_count": 39, "id": "22a738e8", "metadata": {}, "outputs": [ @@ -5013,7 +5036,7 @@ "" ] }, - "execution_count": 43, + "execution_count": 39, "metadata": {}, "output_type": "execute_result" } @@ -5025,7 +5048,7 @@ }, { "cell_type": "code", - "execution_count": 44, + "execution_count": 40, "id": "618ba9da", "metadata": {}, "outputs": [ @@ -5947,7 +5970,7 @@ "" ] }, - "execution_count": 44, + "execution_count": 40, "metadata": {}, "output_type": "execute_result" } @@ -5959,7 +5982,7 @@ }, { "cell_type": "code", - "execution_count": 45, + "execution_count": 41, "id": "f01b3d85", "metadata": {}, "outputs": [ @@ -5994,7 +6017,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_d5ff536c58c3f5a4266b5b8bb7ffb9b6 {\n", + " #map_3ca96b556da2d21e28064b7bfefca351 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6099,14 +6122,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_d5ff536c58c3f5a4266b5b8bb7ffb9b6" ></div>\n", + " <div class="folium-map" id="map_3ca96b556da2d21e28064b7bfefca351" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_d5ff536c58c3f5a4266b5b8bb7ffb9b6 = L.map(\n", - " "map_d5ff536c58c3f5a4266b5b8bb7ffb9b6",\n", + " var map_3ca96b556da2d21e28064b7bfefca351 = L.map(\n", + " "map_3ca96b556da2d21e28064b7bfefca351",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6118,13 +6141,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", + " L.control.scale().addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_8969acbc1f9c0d7510477183d72c016e = L.tileLayer(\n", + " var tile_layer_61f73836c4f59c43ea42f94e4aa3e68d = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6141,10 +6164,10 @@ " );\n", " \n", " \n", - " tile_layer_8969acbc1f9c0d7510477183d72c016e.addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", + " tile_layer_61f73836c4f59c43ea42f94e4aa3e68d.addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", " \n", " \n", - " var tile_layer_c6d3bceed7a6e2fd9c7c233838963294 = L.tileLayer(\n", + " var tile_layer_995892002cbe62bdab4c964c1893c91c = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6161,10 +6184,10 @@ " );\n", " \n", " \n", - " tile_layer_c6d3bceed7a6e2fd9c7c233838963294.addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", + " tile_layer_995892002cbe62bdab4c964c1893c91c.addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", " \n", " \n", - " var tile_layer_d316a43c35d27dac013d216697b27a7e = L.tileLayer(\n", + " var tile_layer_9692a2822f19163cb3be2da1f0723488 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", " {\n", " "minZoom": 0,\n", @@ -6181,10 +6204,10 @@ " );\n", " \n", " \n", - " tile_layer_d316a43c35d27dac013d216697b27a7e.addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", + " tile_layer_9692a2822f19163cb3be2da1f0723488.addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", " \n", " \n", - " var tile_layer_27b770bf40d98c0657e958eac8544ab4 = L.tileLayer(\n", + " var tile_layer_ab2c9e59dafb43391a1272ee34dd9d81 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6201,43 +6224,43 @@ " );\n", " \n", " \n", - " tile_layer_27b770bf40d98c0657e958eac8544ab4.addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", + " tile_layer_ab2c9e59dafb43391a1272ee34dd9d81.addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", " \n", " \n", - " var side_by_side_layers_f67c0da823021b591d1b3a579f078c50 = L.control.sideBySide(\n", - " tile_layer_d316a43c35d27dac013d216697b27a7e, tile_layer_27b770bf40d98c0657e958eac8544ab4\n", - " ).addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", + " var side_by_side_layers_987b084deb47abb6a0a3e7d4c2bd8f65 = L.control.sideBySide(\n", + " tile_layer_9692a2822f19163cb3be2da1f0723488, tile_layer_ab2c9e59dafb43391a1272ee34dd9d81\n", + " ).addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", " \n", " \n", - " var layer_control_a17437209840835ba3194c24b126a123_layers = {\n", + " var layer_control_645fedc7b08ec9bb6e10710130a7736f_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_8969acbc1f9c0d7510477183d72c016e,\n", + " "ESRI Satellite" : tile_layer_61f73836c4f59c43ea42f94e4aa3e68d,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_c6d3bceed7a6e2fd9c7c233838963294,\n", - " "DOW7 Reflectivity" : tile_layer_d316a43c35d27dac013d216697b27a7e,\n", - " "DOW7 Velocity" : tile_layer_27b770bf40d98c0657e958eac8544ab4,\n", + " "Place Labels" : tile_layer_995892002cbe62bdab4c964c1893c91c,\n", + " "DOW7 Reflectivity" : tile_layer_9692a2822f19163cb3be2da1f0723488,\n", + " "DOW7 Velocity" : tile_layer_ab2c9e59dafb43391a1272ee34dd9d81,\n", " },\n", " };\n", - " let layer_control_a17437209840835ba3194c24b126a123 = L.control.layers(\n", - " layer_control_a17437209840835ba3194c24b126a123_layers.base_layers,\n", - " layer_control_a17437209840835ba3194c24b126a123_layers.overlays,\n", + " let layer_control_645fedc7b08ec9bb6e10710130a7736f = L.control.layers(\n", + " layer_control_645fedc7b08ec9bb6e10710130a7736f_layers.base_layers,\n", + " layer_control_645fedc7b08ec9bb6e10710130a7736f_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_d5ff536c58c3f5a4266b5b8bb7ffb9b6);\n", + " ).addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 45, + "execution_count": 41, "metadata": {}, "output_type": "execute_result" } @@ -6280,2364 +6303,215 @@ }, { "cell_type": "code", - "execution_count": 46, + "execution_count": 22, "id": "2461b25d-de5d-42b1-b30d-464185144021", "metadata": {}, + "outputs": [], + "source": [ + "# Retrieve both DOW7 correlation coefficient and velocity data from VEDA STAC\n", + "\n", + "date = \"2024-05-21\" #Use the same date for both reflectivity and velocity\n", + "\n", + "# ── DOW7 Correlation Coefficient ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "# Get reflectivity collection and tiles\n", + "collection_id_rhohv = \"tornadoes-2024-dow-rhohv-greenfield\"\n", + "results_rhohv = client_STAC.search(collections=[collection_id_rhohv], datetime=date)\n", + "items_rhohv = list(results_rhohv.items())\n", + "item_rhohv = items_rhohv[0]\n", + "collection_rhohv = item_rhohv.get_collection()\n", + "dashboard_render_rhohv = collection_rhohv.extra_fields[\"renders\"][\"dashboard\"]\n", + "assets_rhohv = dashboard_render_rhohv[\"assets\"][0]\n", + "((vmin_rhohv, vmax_rhohv),) = dashboard_render_rhohv[\"rescale\"]\n", + "colormap_name = collection_rhohv.extra_fields['renders']['dashboard']['colormap_name']\n", + "\n", + "# Build reflectivity tile URL\n", + "response_rhohv = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id_rhohv}\"\n", + " f\"/items/{item_rhohv.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets_rhohv}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin_refl},{vmax_refl}\",\n", + ")\n", + "response_rhohv.raise_for_status()\n", + "tiles_rhohv = response_rhohv.json()\n", + "\n", + "# ── DOW7 Velocity ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "# Get velocity collection and tiles\n", + "collection_id_vel = \"tornadoes-2024-dow-vg-greenfield\"\n", + "results_vel = client_STAC.search(collections=[collection_id_vel], datetime=date)\n", + "items_vel = list(results_vel.items())\n", + "item_vel = items_vel[0]\n", + "collection_vel = item_vel.get_collection()\n", + "dashboard_render_vel = collection_vel.extra_fields[\"renders\"][\"dashboard\"]\n", + "assets_vel = dashboard_render_vel[\"assets\"][0]\n", + "((vmin_vel, vmax_vel),) = dashboard_render_vel[\"rescale\"]\n", + "colormap_name = collection_vel.extra_fields['renders']['dashboard']['colormap_name']\n", + "\n", + "# Build velocity tile URL\n", + "response_vel = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id_vel}\"\n", + " f\"/items/{item_vel.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets_vel}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin_vel},{vmax_vel}\",\n", + ")\n", + "response_vel.raise_for_status()\n", + "tiles_vel = response_vel.json()" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "f89a00f6-ac59-486e-9af7-5f1d42d1bab1", + "metadata": {}, "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Interactive side-by-side comparison of DOW7 correlation coefficient and velocity data.\n", + "Drag the vertical slider to reveal more of either dataset.\n", + "The lower correlation coefficient values that are collocated with the high velocities indicate the tornado throwing debris in the air.\n", + "\n" + ] + }, { "data": { "text/html": [ + "
Make this Notebook Trusted to load map: File -> Trust Notebook
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 48, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Use the new plot_folium_from_VEDA_STAC function\n", - "m = putils.plot_folium_from_VEDA_STAC(\n", - " tiles_url_template=tiles[\"tiles\"][0],\n", - " center_coords=[41.3036, -94.4569],\n", - " zoom_level=16,\n", - " rescale=(vmin, vmax),\n", - " colormap_name=colormap_name,\n", - " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", - " layer_name=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", - " date=f\"{date}T00:00:00Z\",\n", - " attribution=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", - " tile_name=\"DOW7 Correlation Coefficient (Greenfield, IA)\",\n", - " opacity=0.8,\n", - " height=\"800px\",\n", - " basemap_style=\"esri-satellite-labels\" # Use satellite with labels for better context\n", - ")\n", - "\n", - "print(\n", - " \"DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\"\n", - ")\n", - "# Display the map\n", - "m" - ] - }, - { - "cell_type": "markdown", - "id": "c78230c8-39be-44ee-920a-1b631d6604e4", - "metadata": {}, - "source": [ - "# Example: DOW7-Derived Maximum Velocity Swath (Radar)\n", - "\n", - "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize\n" - ] - }, - { - "cell_type": "code", - "execution_count": 49, - "id": "efb13664-1597-478a-b8e5-fac20e6ac481", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "
    \n", - " \n", - " \n", - " \n", - "
  • \n", - " type\n", - " \"Collection\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " id\n", - " \"tornadoes-2024-dow-vmax-greenfield\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_version\n", - " \"1.1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " description\n", - " \"Derived maximum velocities of the EF-4 Greenfield, IA tornado on May 21, 2024 collected by DOW7. Converted from m/s to mph.\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " links[] 5 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/items\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/geo+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"parent\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"root\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA (Visualization, Exploration, and Data Analysis) STAC API\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 3\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/schema+json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Queryables\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 4\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " rel\n", - " \"self\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"application/json\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - "
  • \n", - " stac_extensions[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"https://stac-extensions.github.io/render/v1.0.0/schema.json\"\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " renders\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " dashboard\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bidx[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " 1\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"VEDA Dashboard Render Parameters\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " assets[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"cog_default\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " nodata\n", - " -999\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " rescale[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " 55\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 250\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " colormap_name\n", - " \"gist_ncar\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " item_assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " cog_default\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 2 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"data\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 1\n", - " \"layer\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Default COG Layer\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Cloud optimized default layer to display on map\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:is_periodic\n", - " True\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " dashboard:time_density\n", - " \"day\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " title\n", - " \"Derived Maximum Velocity (Greenfield, IA; DOW7)\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " extent\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " spatial\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " bbox[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 4 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " -94.4784\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " 41.29080000000008\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 2\n", - " -94.416\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 3\n", - " 41.31980000000008\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    • \n", - " temporal\n", - "
        \n", - " \n", - " \n", - "
      • \n", - " interval[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - "
        • \n", - " 0[] 2 items\n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 0\n", - " \"2024-05-21T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
            \n", - " \n", - " \n", - " \n", - "
          • \n", - " 1\n", - " \"2024-05-21T00:00:00Z\"\n", - "
          • \n", - " \n", - " \n", - " \n", - "
          \n", - " \n", - "
        • \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " license\n", - " \"CC0-1.0\"\n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " providers[] 1 items\n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " name\n", - " \"NASA VEDA\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"host\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " url\n", - " \"https://www.earthdata.nasa.gov/dashboard/\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " summaries\n", - "
      \n", - " \n", - " \n", - "
    • \n", - " datetime[] 2 items\n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 0\n", - " \"2024-05-21T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " 1\n", - " \"2024-05-21T00:00:00Z\"\n", - "
      • \n", - " \n", - " \n", - " \n", - "
      \n", - " \n", - "
    • \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " assets\n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " thumbnail\n", - "
        \n", - " \n", - " \n", - " \n", - "
      • \n", - " href\n", - " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " type\n", - " \"image/jpeg\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " title\n", - " \"Thumbnail\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " description\n", - " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", - "
      • \n", - " \n", - " \n", - " \n", - " \n", - "
      • \n", - " roles[] 1 items\n", - " \n", - "
          \n", - " \n", - " \n", - " \n", - "
        • \n", - " 0\n", - " \"thumbnail\"\n", - "
        • \n", - " \n", - " \n", - " \n", - "
        \n", - " \n", - "
      • \n", - " \n", - " \n", - "
      \n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - "
\n", - "
\n", - "
" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 49, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# TODO: Change collection_ID and date\n", - "collection_id = \"tornadoes-2024-dow-vmax-greenfield\"\n", - "date = \"2024-05-21\"\n", - "\n", - "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "\n", - "results = client_STAC.search(collections=[collection_id], datetime=date)\n", - "\n", - "items = list(results.items())\n", - "assert len(items) != 0, \"No items found\"\n", - "item = items[0]\n", - "collection = item.get_collection()\n", - "\n", - "# grab the dashboard render block\n", - "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", - "\n", - "assets = dashboard_render[\"assets\"][0]\n", - "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", - "\n", - "collection" - ] - }, - { - "cell_type": "code", - "execution_count": 50, - "id": "14d08573-78ea-45bf-baf0-58cddf840401", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=gist_ncar&rescale=55%2C250'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.4784, 41.29080000000008, -94.416, 41.31980000000008], 'center': [-94.4472, 41.30530000000008, 0]}\n" - ] - } - ], - "source": [ - "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "colormap_name = \"gist_ncar\"\n", - "\n", - "# Build endpoint URL without worrying about trailing slashes\n", - "response = requests.get(\n", - " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", - " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", - " f\"&assets={assets}\"\n", - " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", - " f\"&rescale={vmin},{vmax}\",\n", - ")\n", - "\n", - "response.raise_for_status()\n", - "\n", - "tiles = response.json()\n", - "print(tiles)" - ] - }, - { - "cell_type": "code", - "execution_count": 51, - "id": "b062836d-83f6-414d-91d2-9255e0b46a3c", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\n" - ] - }, - { - "data": { - "text/html": [ - "
Make this Notebook Trusted to load map: File -> Trust Notebook
" ], "text/plain": [ - "" + "" ] }, - "execution_count": 51, + "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# Use the new plot_folium_from_VEDA_STAC function\n", - "m = putils.plot_folium_from_VEDA_STAC(\n", - " tiles_url_template=tiles[\"tiles\"][0],\n", + "# Use the new plot_folium_SidebySide_layer_from_VEDA_STAC function from plotutils\n", + "m = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", + " tiles_url_left=tiles_refl[\"tiles\"][0],\n", + " tiles_url_right=tiles_vel[\"tiles\"][0],\n", " center_coords=[41.3036, -94.4569],\n", " zoom_level=16,\n", - " rescale=(vmin, vmax),\n", - " colormap_name=colormap_name,\n", - " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", - " layer_name=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", - " date=f\"{date}T00:00:00Z\",\n", - " colorbar_caption=\"m/s\",\n", - " attribution=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", - " tile_name=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", + " title=\"DOW7 Comparison β€” Greenfield, IA β€” May 21, 2024\",\n", + " label_left=\"← Correlation Coefficient (0 to 1)\",\n", + " label_right=\"Velocity (-75 to 75 m/s) β†’\",\n", + " layer_name_left=\"DOW7 Correlation Coefficient\",\n", + " layer_name_right=\"DOW7 Velocity\",\n", " opacity=0.8,\n", + " basemap_style='esri-satellite-labels',\n", " height=\"800px\",\n", - " basemap_style=\"esri-satellite-labels\" # Use satellite with labels for better context\n", + " width=\"100%\"\n", ")\n", "\n", - "print(\n", - " \"DOW-collected correlation coefficient values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 as it was impacting Greenfield.\"\n", - ")\n", + "print(\"Interactive side-by-side comparison of DOW7 correlation coefficient and velocity data.\")\n", + "print(\"Drag the vertical slider to reveal more of either dataset.\")\n", + "print(\"The lower correlation coefficient values that are collocated with the high velocities indicate the tornado throwing debris in the air.\")\n", + "print()\n", + "\n", "# Display the map\n", "m" ] }, { - "cell_type": "code", - "execution_count": null, - "id": "bb6f0494", + "cell_type": "markdown", + "id": "c78230c8-39be-44ee-920a-1b631d6604e4", "metadata": {}, - "outputs": [], - "source": [] + "source": [ + "# Example: DOW7-Derived Maximum Velocity Swath (Radar)\n", + "\n", + "Pull the DOW7 radar data from from the VEDA STAC catalog and visualize\n" + ] }, { "cell_type": "code", - "execution_count": 52, - "id": "e1a973b8", + "execution_count": 25, + "id": "efb13664-1597-478a-b8e5-fac20e6ac481", "metadata": {}, "outputs": [ { @@ -8891,7 +6742,7 @@ " \n", "
  • \n", " id\n", - " \"ps-greenfield-pre-tornadoes-2024\"\n", + " \"tornadoes-2024-dow-vmax-greenfield\"\n", "
  • \n", " \n", " \n", @@ -8909,7 +6760,7 @@ " \n", "
  • \n", " description\n", - " \"Commercial SmallSat PlanetScope Satellite Visible Imagery of select locations that experienced tornado damage during the spring of 2024 in the United States. The location in this collection is Greenfield, Iowa before the tornado strike.\"\n", + " \"Derived maximum velocities of the EF-4 Greenfield, IA tornado on May 21, 2024 collected by DOW7. Converted from m/s to mph.\"\n", "
  • \n", " \n", " \n", @@ -8939,7 +6790,7 @@ " \n", "
  • \n", " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/items\"\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/items\"\n", "
  • \n", " \n", " \n", @@ -9074,7 +6925,7 @@ " \n", "
  • \n", " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024/queryables\"\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield/queryables\"\n", "
  • \n", " \n", " \n", @@ -9125,7 +6976,7 @@ " \n", "
  • \n", " href\n", - " \"https://openveda.cloud/api/stac/collections/ps-greenfield-pre-tornadoes-2024\"\n", + " \"https://openveda.cloud/api/stac/collections/tornadoes-2024-dow-vmax-greenfield\"\n", "
  • \n", " \n", " \n", @@ -9183,7 +7034,7 @@ " \n", " \n", "
  • \n", - " bidx[] 3 items\n", + " bidx[] 1 items\n", " \n", "
      \n", " \n", @@ -9191,32 +7042,6 @@ " \n", "
    • \n", " 0\n", - " 3\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 1\n", - " 2\n", - "
    • \n", - " \n", - " \n", - " \n", - "
    \n", - " \n", - "
      \n", - " \n", - " \n", - " \n", - "
    • \n", - " 2\n", " 1\n", "
    • \n", " \n", @@ -9257,6 +7082,15 @@ " \n", " \n", " \n", + " \n", + "
    • \n", + " nodata\n", + " -999\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", "
    • \n", " rescale[] 1 items\n", " \n", @@ -9272,7 +7106,7 @@ " \n", "
    • \n", " 0\n", - " 0\n", + " 55\n", "
    • \n", " \n", " \n", @@ -9285,7 +7119,7 @@ " \n", "
    • \n", " 1\n", - " 2500\n", + " 250\n", "
    • \n", " \n", " \n", @@ -9303,8 +7137,8 @@ " \n", " \n", "
    • \n", - " resampling\n", - " \"bilinear\"\n", + " colormap_name\n", + " \"gist_ncar\"\n", "
    • \n", " \n", " \n", @@ -9396,17 +7230,8 @@ " \n", " \n", " \n", - "
    \n", - "
  • \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
  • \n", - " datetime_range\n", - " \"day\"\n", - "
  • \n", + " \n", + " \n", " \n", " \n", " \n", @@ -9432,7 +7257,7 @@ " \n", "
  • \n", " title\n", - " \"Planet TrueColor Satellite Imagery (Greenfield IA Tornado Damage - Pre)\"\n", + " \"Derived Maximum Velocity (Greenfield, IA; DOW7)\"\n", "
  • \n", " \n", " \n", @@ -9465,7 +7290,7 @@ " \n", "
  • \n", " 0\n", - " -94.57407952376526\n", + " -94.4784\n", "
  • \n", " \n", " \n", @@ -9478,7 +7303,7 @@ " \n", "
  • \n", " 1\n", - " 41.20937000457795\n", + " 41.29080000000008\n", "
  • \n", " \n", " \n", @@ -9491,7 +7316,7 @@ " \n", "
  • \n", " 2\n", - " -94.17411959542935\n", + " -94.416\n", "
  • \n", " \n", " \n", @@ -9504,7 +7329,7 @@ " \n", "
  • \n", " 3\n", - " 41.432508029615924\n", + " 41.31980000000008\n", "
  • \n", " \n", " \n", @@ -9546,7 +7371,7 @@ " \n", "
  • \n", " 0\n", - " \"2024-05-20T00:00:00Z\"\n", + " \"2024-05-21T00:00:00Z\"\n", "
  • \n", " \n", " \n", @@ -9559,7 +7384,7 @@ " \n", "
  • \n", " 1\n", - " \"2024-05-20T00:00:00Z\"\n", + " \"2024-05-21T00:00:00Z\"\n", "
  • \n", " \n", " \n", @@ -9665,150 +7490,466 @@ " \n", "
      \n", " \n", - " \n", - " \n", - "
    • \n", - " 0\n", - " \"2024-05-20T00:00:00Z\"\n", - "
    • \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"2024-05-21T00:00:00Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " \"2024-05-21T00:00:00Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://thumbnails.openveda.cloud/tornado-2024-cover.png\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " description\n", + " \"Wedge tornado passing southeast of Wapakoneta, Ohio on March 14, 2024\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "collection_id = \"tornadoes-2024-dow-vmax-greenfield\"\n", + "date = \"2024-05-21\"\n", + "\n", + "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "\n", + "results = client_STAC.search(collections=[collection_id], datetime=date)\n", + "\n", + "items = list(results.items())\n", + "assert len(items) != 0, \"No items found\"\n", + "item = items[0]\n", + "collection = item.get_collection()\n", + "\n", + "# grab the dashboard render block\n", + "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", + "\n", + "assets = dashboard_render[\"assets\"][0]\n", + "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "\n", + "collection" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "14d08573-78ea-45bf-baf0-58cddf840401", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tilejson': '2.2.0', 'version': '1.0.0', 'scheme': 'xyz', 'tiles': ['https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default&color_formula=gamma+r+1.05&colormap_name=gist_ncar&rescale=55%2C250'], 'minzoom': 0, 'maxzoom': 24, 'bounds': [-94.4784, 41.29080000000008, -94.416, 41.31980000000008], 'center': [-94.4472, 41.30530000000008, 0]}\n" + ] + } + ], + "source": [ + "# ── VEDA Tile Request ─────────────────────────────────────────────────────────────────────────────────────\n", + "colormap_name = \"gist_ncar\"\n", + "\n", + "# Build endpoint URL without worrying about trailing slashes\n", + "response = requests.get(\n", + " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id}\"\n", + " f\"/items/{item.id}/WebMercatorQuad/tilejson.json?\"\n", + " f\"&assets={assets}\"\n", + " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", + " f\"&rescale={vmin},{vmax}\",\n", + ")\n", + "\n", + "response.raise_for_status()\n", + "\n", + "tiles = response.json()\n", + "print(tiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "b062836d-83f6-414d-91d2-9255e0b46a3c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DOW-derived maximum velocity values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 through Greenfield.\n" + ] + }, + { + "data": { + "text/html": [ + "
    Make this Notebook Trusted to load map: File -> Trust Notebook
    " ], "text/plain": [ - "" + "" ] }, - "execution_count": 52, + "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "# TODO: Change collection_ID and date\n", - "collection_id = \"ps-greenfield-pre-tornadoes-2024\"\n", - "date = \"2024-05-20\"\n", - "\n", - "# ── VEDA Collection Request ─────────────────────────────────────────────────────────────────────────────────────\n", - "\n", - "results = client_STAC.search(collections=[collection_id], datetime=date)\n", - "\n", - "items = list(results.items())\n", - "assert len(items) != 0, \"No items found\"\n", - "item = items[0]\n", - "collection = item.get_collection()\n", - "\n", - "# grab the dashboard render block\n", - "dashboard_render = collection.extra_fields[\"renders\"][\"dashboard\"]\n", - "\n", - "assets = dashboard_render[\"assets\"][0]\n", - "((vmin, vmax),) = dashboard_render[\"rescale\"]\n", + "# Use the new plot_folium_from_VEDA_STAC function\n", + "m = putils.plot_folium_from_VEDA_STAC(\n", + " tiles_url_template=tiles[\"tiles\"][0],\n", + " center_coords=[41.3036, -94.4569],\n", + " zoom_level=15.5,\n", + " rescale=(vmin, vmax),\n", + " colormap_name=colormap_name,\n", + " capitalize_cmap=False, # to better match VEDA colors and matplotlib colors\n", + " layer_name=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", + " date=f\"{date}T00:00:00Z\",\n", + " colorbar_caption=\"mph\",\n", + " attribution=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", + " tile_name=\"DOW7-Derived Maximum Velocity (Greenfield, IA)\",\n", + " opacity=0.8,\n", + " height=\"800px\",\n", + " basemap_style=\"esri-satellite-labels\" # Use satellite with labels for better context\n", + ")\n", "\n", - "collection" + "print(\n", + " \"DOW-derived maximum velocity values from the Greenfield, Iowa EF-4 tornado on May 21, 2024 through Greenfield.\"\n", + ")\n", + "# Display the map\n", + "m" ] }, { @@ -9831,7 +7972,7 @@ }, { "cell_type": "code", - "execution_count": 53, + "execution_count": 29, "id": "g0zklfvn8i", "metadata": {}, "outputs": [ @@ -10786,7 +8927,7 @@ "" ] }, - "execution_count": 53, + "execution_count": 29, "metadata": {}, "output_type": "execute_result" } @@ -10834,7 +8975,7 @@ }, { "cell_type": "code", - "execution_count": 54, + "execution_count": 30, "id": "gc0d3a4crpj", "metadata": {}, "outputs": [ @@ -11789,7 +9930,7 @@ "" ] }, - "execution_count": 54, + "execution_count": 30, "metadata": {}, "output_type": "execute_result" } @@ -11846,7 +9987,7 @@ }, { "cell_type": "code", - "execution_count": 55, + "execution_count": 31, "id": "9801hkznaop", "metadata": {}, "outputs": [ @@ -11872,7 +10013,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_5c87f0e30b281ffaba0b6cffa1af3756 {\n", + " #map_2ca7e80bfc5bf261aacb07bedd8aade4 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -11977,14 +10118,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_5c87f0e30b281ffaba0b6cffa1af3756" ></div>\n", + " <div class="folium-map" id="map_2ca7e80bfc5bf261aacb07bedd8aade4" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_5c87f0e30b281ffaba0b6cffa1af3756 = L.map(\n", - " "map_5c87f0e30b281ffaba0b6cffa1af3756",\n", + " var map_2ca7e80bfc5bf261aacb07bedd8aade4 = L.map(\n", + " "map_2ca7e80bfc5bf261aacb07bedd8aade4",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -11996,13 +10137,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", + " L.control.scale().addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_84d86fb2b333844db7b368a8ad567be1 = L.tileLayer(\n", + " var tile_layer_b84bb6538e4fa3fca0e5557d6dc8e423 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -12019,10 +10160,10 @@ " );\n", " \n", " \n", - " tile_layer_84d86fb2b333844db7b368a8ad567be1.addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", + " tile_layer_b84bb6538e4fa3fca0e5557d6dc8e423.addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", " \n", " \n", - " var tile_layer_ce9f3ba1a0ee2c063933aff4bd2ebfad = L.tileLayer(\n", + " var tile_layer_9408c3c86fe0b87810cff3d923ce2d53 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=3\\u0026bidx=2\\u0026bidx=1\\u0026rescale=0%2C2500\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -12039,10 +10180,10 @@ " );\n", " \n", " \n", - " tile_layer_ce9f3ba1a0ee2c063933aff4bd2ebfad.addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", + " tile_layer_9408c3c86fe0b87810cff3d923ce2d53.addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", " \n", " \n", - " var tile_layer_cf4c6605318db455e1e8a34578a2b512 = L.tileLayer(\n", + " var tile_layer_55d0cd36d9c903dd4f50ee46d8390928 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=1\\u0026bidx=2\\u0026bidx=3\\u0026rescale=0%2C255\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -12059,42 +10200,42 @@ " );\n", " \n", " \n", - " tile_layer_cf4c6605318db455e1e8a34578a2b512.addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", + " tile_layer_55d0cd36d9c903dd4f50ee46d8390928.addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", " \n", " \n", - " var side_by_side_layers_c32402834046a1b579a1c48ee2e70373 = L.control.sideBySide(\n", - " tile_layer_ce9f3ba1a0ee2c063933aff4bd2ebfad, tile_layer_cf4c6605318db455e1e8a34578a2b512\n", - " ).addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", + " var side_by_side_layers_4ad0268e4a94f48b857d7940efbe970b = L.control.sideBySide(\n", + " tile_layer_9408c3c86fe0b87810cff3d923ce2d53, tile_layer_55d0cd36d9c903dd4f50ee46d8390928\n", + " ).addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", " \n", " \n", - " var layer_control_4673364cb0d7c7f9d72282d81176b7c5_layers = {\n", + " var layer_control_16a92e2c5aa66ed98af32467878f70e6_layers = {\n", " base_layers : {\n", - " "CartoDB Positron" : tile_layer_84d86fb2b333844db7b368a8ad567be1,\n", + " "CartoDB Positron" : tile_layer_b84bb6538e4fa3fca0e5557d6dc8e423,\n", " },\n", " overlays : {\n", - " "PlanetScope Pre-Tornado" : tile_layer_ce9f3ba1a0ee2c063933aff4bd2ebfad,\n", - " "PlanetScope Post-Tornado" : tile_layer_cf4c6605318db455e1e8a34578a2b512,\n", + " "PlanetScope Pre-Tornado" : tile_layer_9408c3c86fe0b87810cff3d923ce2d53,\n", + " "PlanetScope Post-Tornado" : tile_layer_55d0cd36d9c903dd4f50ee46d8390928,\n", " },\n", " };\n", - " let layer_control_4673364cb0d7c7f9d72282d81176b7c5 = L.control.layers(\n", - " layer_control_4673364cb0d7c7f9d72282d81176b7c5_layers.base_layers,\n", - " layer_control_4673364cb0d7c7f9d72282d81176b7c5_layers.overlays,\n", + " let layer_control_16a92e2c5aa66ed98af32467878f70e6 = L.control.layers(\n", + " layer_control_16a92e2c5aa66ed98af32467878f70e6_layers.base_layers,\n", + " layer_control_16a92e2c5aa66ed98af32467878f70e6_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_5c87f0e30b281ffaba0b6cffa1af3756);\n", + " ).addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 55, + "execution_count": 31, "metadata": {}, "output_type": "execute_result" } @@ -12151,7 +10292,7 @@ ], "metadata": { "kernelspec": { - "display_name": "gdal", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, From 9a7da9ea3e073d7418d586fc6428ce702f8a8176 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Thu, 21 Aug 2025 16:36:08 -0500 Subject: [PATCH 12/28] add colorbar to sideByside layers --- user-guide/notebooks/stories/plotutils.py | 83 ++- .../stories/tornadoes_2024_notebook.ipynb | 550 ++++++++++-------- 2 files changed, 396 insertions(+), 237 deletions(-) diff --git a/user-guide/notebooks/stories/plotutils.py b/user-guide/notebooks/stories/plotutils.py index d0a40828..77291e7e 100644 --- a/user-guide/notebooks/stories/plotutils.py +++ b/user-guide/notebooks/stories/plotutils.py @@ -845,7 +845,13 @@ def plot_folium_SidebySide_layer_from_VEDA_STAC( opacity: float = 0.8, basemap_style: str = 'esri-satellite-labels', height: str = "800px", - width: str = "100%" + width: str = "100%", + colormap_left: str = None, + colormap_right: str = None, + rescale_left: tuple = None, + rescale_right: tuple = None, + units_left: str = None, + units_right: str = None ) -> folium.Map: """ Create a Folium map with side-by-side layer comparison using a draggable slider. @@ -884,6 +890,18 @@ def plot_folium_SidebySide_layer_from_VEDA_STAC( Map height as CSS string (default "800px") width : str, optional Map width as CSS string (default "100%") + colormap_left : str, optional + Name of matplotlib colormap for left layer (e.g., 'turbo') + colormap_right : str, optional + Name of matplotlib colormap for right layer (e.g., 'seismic') + rescale_left : tuple, optional + (vmin, vmax) values for left layer colorbar + rescale_right : tuple, optional + (vmin, vmax) values for right layer colorbar + units_left : str, optional + Units for left colorbar (e.g., 'dBZ') + units_right : str, optional + Units for right colorbar (e.g., 'm/s') Returns ------- @@ -986,7 +1004,62 @@ def plot_folium_SidebySide_layer_from_VEDA_STAC( """ m.get_root().html.add_child(Element(title_html)) - # Add labels for left and right panels + # Helper function to generate HTML colorbar + def generate_html_colorbar(colormap_name, vmin, vmax, units=None): + if not colormap_name or vmin is None or vmax is None: + return "" + + # Get matplotlib colormap + try: + cmap = plt.get_cmap(colormap_name) + except: + return "" + + # Generate gradient CSS + n_stops = 10 + gradient_stops = [] + for i in range(n_stops): + ratio = i / (n_stops - 1) + rgba = cmap(ratio) + color = f"rgba({int(rgba[0]*255)}, {int(rgba[1]*255)}, {int(rgba[2]*255)}, 1)" + gradient_stops.append(f"{color} {ratio*100}%") + + gradient_css = f"linear-gradient(to right, {', '.join(gradient_stops)})" + + # Format units string + units_str = f" {units}" if units else "" + + return f""" +
    +
    +
    + {vmin}{units_str} + {vmax}{units_str} +
    +
    + """ + + # Generate colorbars HTML if needed + left_colorbar_html = "" + right_colorbar_html = "" + + if colormap_left and rescale_left: + left_colorbar_html = generate_html_colorbar( + colormap_left, rescale_left[0], rescale_left[1], units_left + ) + + if colormap_right and rescale_right: + right_colorbar_html = generate_html_colorbar( + colormap_right, rescale_right[0], rescale_right[1], units_right + ) + + # Add labels for left and right panels with optional colorbars labels_html = f"""
    - {label_left} +
    {label_left}
    + {left_colorbar_html}
    - {label_right} +
    {label_right}
    + {right_colorbar_html}
    """ m.get_root().html.add_child(Element(labels_html)) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 0973812a..46f65e2f 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -1133,7 +1133,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "id": "9af1c710-0423-4d3e-9c93-4fff13d1dab5", "metadata": {}, "outputs": [ @@ -1159,7 +1159,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_506f4a4619318c7e81895138efa802ad {\n", + " #map_d2eedeb0e6eabe2b5fb5975670416653 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -1212,7 +1212,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_506f4a4619318c7e81895138efa802ad" ></div>\n", + " <div class="folium-map" id="map_d2eedeb0e6eabe2b5fb5975670416653" ></div>\n", " \n", " \n", " <div style="\n", @@ -1313,8 +1313,8 @@ "<script>\n", " \n", " \n", - " var map_506f4a4619318c7e81895138efa802ad = L.map(\n", - " "map_506f4a4619318c7e81895138efa802ad",\n", + " var map_d2eedeb0e6eabe2b5fb5975670416653 = L.map(\n", + " "map_d2eedeb0e6eabe2b5fb5975670416653",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", @@ -1326,13 +1326,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_506f4a4619318c7e81895138efa802ad);\n", + " L.control.scale().addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_edc88e7a8044310f264c4407c4dd6b03 = L.tileLayer(\n", + " var tile_layer_57128305c4e55a5696bd7bc641477109 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1349,10 +1349,10 @@ " );\n", " \n", " \n", - " tile_layer_edc88e7a8044310f264c4407c4dd6b03.addTo(map_506f4a4619318c7e81895138efa802ad);\n", + " tile_layer_57128305c4e55a5696bd7bc641477109.addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", " \n", " \n", - " var tile_layer_4451184b510b6dd9b8fad4c5618325b1 = L.tileLayer(\n", + " var tile_layer_68333a7a81afa12661eed5196981aeb7 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1369,10 +1369,10 @@ " );\n", " \n", " \n", - " tile_layer_4451184b510b6dd9b8fad4c5618325b1.addTo(map_506f4a4619318c7e81895138efa802ad);\n", + " tile_layer_68333a7a81afa12661eed5196981aeb7.addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", " \n", " \n", - " var tile_layer_7bcb35a4d857e66c0646f8a75cbb188b = L.tileLayer(\n", + " var tile_layer_c73656810d494a0eeda2a50d4b12442f = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -1389,37 +1389,37 @@ " );\n", " \n", " \n", - " tile_layer_7bcb35a4d857e66c0646f8a75cbb188b.addTo(map_506f4a4619318c7e81895138efa802ad);\n", + " tile_layer_c73656810d494a0eeda2a50d4b12442f.addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", " \n", " \n", - " var layer_control_a873b097d3b871a7e256131ce821bcc7_layers = {\n", + " var layer_control_653e321d95a7040572f0f56031a1dce7_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_edc88e7a8044310f264c4407c4dd6b03,\n", + " "ESRI Satellite" : tile_layer_57128305c4e55a5696bd7bc641477109,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_4451184b510b6dd9b8fad4c5618325b1,\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_7bcb35a4d857e66c0646f8a75cbb188b,\n", + " "Place Labels" : tile_layer_68333a7a81afa12661eed5196981aeb7,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_c73656810d494a0eeda2a50d4b12442f,\n", " },\n", " };\n", - " let layer_control_a873b097d3b871a7e256131ce821bcc7 = L.control.layers(\n", - " layer_control_a873b097d3b871a7e256131ce821bcc7_layers.base_layers,\n", - " layer_control_a873b097d3b871a7e256131ce821bcc7_layers.overlays,\n", + " let layer_control_653e321d95a7040572f0f56031a1dce7 = L.control.layers(\n", + " layer_control_653e321d95a7040572f0f56031a1dce7_layers.base_layers,\n", + " layer_control_653e321d95a7040572f0f56031a1dce7_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_506f4a4619318c7e81895138efa802ad);\n", + " ).addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 8, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -1487,7 +1487,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "id": "965db310-ee99-4af3-96a8-00e63854351d", "metadata": {}, "outputs": [ @@ -2365,7 +2365,7 @@ "" ] }, - "execution_count": 9, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -2395,7 +2395,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 9, "id": "bdba0ec8-aced-4a16-a5ad-e261aa586cfd", "metadata": {}, "outputs": [ @@ -2415,7 +2415,7 @@ " 'center': [-88.34727736513193, 37.42233953352921, 0]}" ] }, - "execution_count": 10, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -2442,7 +2442,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 10, "id": "f6183652-36ca-4d4f-af4e-41070e813092", "metadata": {}, "outputs": [ @@ -2468,7 +2468,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_8fc3de809379d6c5df90e6e48e8b0fc1 {\n", + " #map_89d64365332fea3f856fef0bb3e43122 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -2521,7 +2521,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_8fc3de809379d6c5df90e6e48e8b0fc1" ></div>\n", + " <div class="folium-map" id="map_89d64365332fea3f856fef0bb3e43122" ></div>\n", " \n", " \n", " <div style="\n", @@ -2622,8 +2622,8 @@ "<script>\n", " \n", " \n", - " var map_8fc3de809379d6c5df90e6e48e8b0fc1 = L.map(\n", - " "map_8fc3de809379d6c5df90e6e48e8b0fc1",\n", + " var map_89d64365332fea3f856fef0bb3e43122 = L.map(\n", + " "map_89d64365332fea3f856fef0bb3e43122",\n", " {\n", " center: [40.3, -84.05],\n", " crs: L.CRS.EPSG3857,\n", @@ -2635,13 +2635,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", + " L.control.scale().addTo(map_89d64365332fea3f856fef0bb3e43122);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_15cb9f6ad8876ed0192b1302f38d77a5 = L.tileLayer(\n", + " var tile_layer_a7ad6772576477e7c5c7f5be1f7b55de = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2658,10 +2658,10 @@ " );\n", " \n", " \n", - " tile_layer_15cb9f6ad8876ed0192b1302f38d77a5.addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", + " tile_layer_a7ad6772576477e7c5c7f5be1f7b55de.addTo(map_89d64365332fea3f856fef0bb3e43122);\n", " \n", " \n", - " var tile_layer_027f40c29369edbf4c87a0e1d3dbb9b6 = L.tileLayer(\n", + " var tile_layer_9d241f38e12f22be1b3f5e897bf8823e = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2678,10 +2678,10 @@ " );\n", " \n", " \n", - " tile_layer_027f40c29369edbf4c87a0e1d3dbb9b6.addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", + " tile_layer_9d241f38e12f22be1b3f5e897bf8823e.addTo(map_89d64365332fea3f856fef0bb3e43122);\n", " \n", " \n", - " var tile_layer_b651dd4aa14a5daadd1fd53934f7755a = L.tileLayer(\n", + " var tile_layer_ff05cf58682890ed517cf11fae106068 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -2698,37 +2698,37 @@ " );\n", " \n", " \n", - " tile_layer_b651dd4aa14a5daadd1fd53934f7755a.addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", + " tile_layer_ff05cf58682890ed517cf11fae106068.addTo(map_89d64365332fea3f856fef0bb3e43122);\n", " \n", " \n", - " var layer_control_14603dfcf62606cf94c4c73a02eeeeb9_layers = {\n", + " var layer_control_8d64332b34fcf4f748930417264f1dd6_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_15cb9f6ad8876ed0192b1302f38d77a5,\n", + " "ESRI Satellite" : tile_layer_a7ad6772576477e7c5c7f5be1f7b55de,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_027f40c29369edbf4c87a0e1d3dbb9b6,\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_b651dd4aa14a5daadd1fd53934f7755a,\n", + " "Place Labels" : tile_layer_9d241f38e12f22be1b3f5e897bf8823e,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_ff05cf58682890ed517cf11fae106068,\n", " },\n", " };\n", - " let layer_control_14603dfcf62606cf94c4c73a02eeeeb9 = L.control.layers(\n", - " layer_control_14603dfcf62606cf94c4c73a02eeeeb9_layers.base_layers,\n", - " layer_control_14603dfcf62606cf94c4c73a02eeeeb9_layers.overlays,\n", + " let layer_control_8d64332b34fcf4f748930417264f1dd6 = L.control.layers(\n", + " layer_control_8d64332b34fcf4f748930417264f1dd6_layers.base_layers,\n", + " layer_control_8d64332b34fcf4f748930417264f1dd6_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_8fc3de809379d6c5df90e6e48e8b0fc1);\n", + " ).addTo(map_89d64365332fea3f856fef0bb3e43122);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 11, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -2779,7 +2779,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 11, "id": "d55ccd28-c8ba-47cf-bfd3-03c3a8cd5beb", "metadata": {}, "outputs": [ @@ -3710,7 +3710,7 @@ "" ] }, - "execution_count": 12, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } @@ -3739,7 +3739,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 12, "id": "6b3f9709-09bc-43ef-b3fd-d89f3c0cd5e9", "metadata": {}, "outputs": [ @@ -3772,7 +3772,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 13, "id": "f283977b-e862-4f2d-9032-414d974a35b4", "metadata": {}, "outputs": [ @@ -3805,7 +3805,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_6d53fbbaad162eaab379a276c506f12b {\n", + " #map_45266030bcdeed1380fc0c1c6a071fb6 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -3859,14 +3859,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_6d53fbbaad162eaab379a276c506f12b" ></div>\n", + " <div class="folium-map" id="map_45266030bcdeed1380fc0c1c6a071fb6" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_6d53fbbaad162eaab379a276c506f12b = L.map(\n", - " "map_6d53fbbaad162eaab379a276c506f12b",\n", + " var map_45266030bcdeed1380fc0c1c6a071fb6 = L.map(\n", + " "map_45266030bcdeed1380fc0c1c6a071fb6",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -3878,13 +3878,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", + " L.control.scale().addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_58eae38b7fd3d971f5ff01340d65f604 = L.tileLayer(\n", + " var tile_layer_0df206e67b47fa1a4af50985e5a3362f = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -3901,10 +3901,10 @@ " );\n", " \n", " \n", - " tile_layer_58eae38b7fd3d971f5ff01340d65f604.addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", + " tile_layer_0df206e67b47fa1a4af50985e5a3362f.addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", " \n", " \n", - " var tile_layer_4c19f3d5a994f154008bc39b12206271 = L.tileLayer(\n", + " var tile_layer_381863af38d4d484911271df7ca65ddd = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", @@ -3921,66 +3921,66 @@ " );\n", " \n", " \n", - " tile_layer_4c19f3d5a994f154008bc39b12206271.addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", + " tile_layer_381863af38d4d484911271df7ca65ddd.addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", " \n", " \n", - " var layer_control_981a82552d111265b84f99e01ba937b4_layers = {\n", + " var layer_control_c8a4277d06bcaa9e6439779f8f647fb9_layers = {\n", " base_layers : {\n", - " "CartoDB Dark" : tile_layer_58eae38b7fd3d971f5ff01340d65f604,\n", + " "CartoDB Dark" : tile_layer_0df206e67b47fa1a4af50985e5a3362f,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_4c19f3d5a994f154008bc39b12206271,\n", + " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_381863af38d4d484911271df7ca65ddd,\n", " },\n", " };\n", - " let layer_control_981a82552d111265b84f99e01ba937b4 = L.control.layers(\n", - " layer_control_981a82552d111265b84f99e01ba937b4_layers.base_layers,\n", - " layer_control_981a82552d111265b84f99e01ba937b4_layers.overlays,\n", + " let layer_control_c8a4277d06bcaa9e6439779f8f647fb9 = L.control.layers(\n", + " layer_control_c8a4277d06bcaa9e6439779f8f647fb9_layers.base_layers,\n", + " layer_control_c8a4277d06bcaa9e6439779f8f647fb9_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", + " ).addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", "\n", " \n", " \n", - " var color_map_4f049356591415c6df8ce4c6950d13b1 = {};\n", + " var color_map_c6f2ab527f0a2bbefdb5dce185bf197c = {};\n", "\n", " \n", - " color_map_4f049356591415c6df8ce4c6950d13b1.color = d3.scale.threshold()\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color = d3.scale.threshold()\n", " .domain([-150.0, -149.3987975951904, -148.79759519038078, -148.19639278557113, -147.59519038076152, -146.9939879759519, -146.3927855711423, -145.79158316633266, -145.19038076152304, -144.58917835671343, -143.98797595190382, -143.38677354709418, -142.78557114228457, -142.18436873747495, -141.58316633266534, -140.9819639278557, -140.3807615230461, -139.77955911823648, -139.17835671342687, -138.57715430861722, -137.9759519038076, -137.374749498998, -136.7735470941884, -136.17234468937875, -135.57114228456913, -134.96993987975952, -134.3687374749499, -133.76753507014027, -133.16633266533066, -132.56513026052104, -131.96392785571143, -131.3627254509018, -130.76152304609218, -130.16032064128257, -129.55911823647295, -128.95791583166334, -128.3567134268537, -127.75551102204409, -127.15430861723448, -126.55310621242485, -125.95190380761522, -125.35070140280561, -124.749498997996, -124.14829659318637, -123.54709418837675, -122.94589178356713, -122.34468937875752, -121.7434869739479, -121.14228456913827, -120.54108216432866, -119.93987975951904, -119.33867735470942, -118.73747494989979, -118.13627254509018, -117.53507014028057, -116.93386773547094, -116.33266533066131, -115.7314629258517, -115.13026052104209, -114.52905811623246, -113.92785571142284, -113.32665330661322, -112.72545090180361, -112.12424849699399, -111.52304609218436, -110.92184368737475, -110.32064128256513, -109.71943887775551, -109.11823647294588, -108.51703406813627, -107.91583166332666, -107.31462925851704, -106.71342685370742, -106.11222444889779, -105.51102204408818, -104.90981963927857, -104.30861723446894, -103.70741482965931, -103.1062124248497, -102.50501002004009, -101.90380761523046, -101.30260521042084, -100.70140280561122, -100.10020040080161, -99.49899799599199, -98.89779559118236, -98.29659318637275, -97.69539078156313, -97.09418837675351, -96.49298597194388, -95.89178356713427, -95.29058116232466, -94.68937875751503, -94.0881763527054, -93.48697394789579, -92.88577154308618, -92.28456913827655, -91.68336673346693, -91.08216432865731, -90.4809619238477, -89.87975951903807, -89.27855711422845, -88.67735470941884, -88.07615230460922, -87.4749498997996, -86.87374749498997, -86.27254509018036, -85.67134268537075, -85.07014028056112, -84.46893787575151, -83.86773547094188, -83.26653306613227, -82.66533066132264, -82.06412825651303, -81.4629258517034, -80.86172344689379, -80.26052104208416, -79.65931863727455, -79.05811623246493, -78.45691382765531, -77.85571142284569, -77.25450901803607, -76.65330661322645, -76.05210420841684, -75.45090180360721, -74.8496993987976, -74.24849699398797, -73.64729458917836, -73.04609218436873, -72.44488977955912, -71.84368737474949, -71.24248496993988, -70.64128256513025, -70.04008016032064, -69.43887775551102, -68.8376753507014, -68.23647294589178, -67.63527054108216, -67.03406813627255, -66.43286573146293, -65.83166332665331, -65.23046092184369, -64.62925851703407, -64.02805611222445, -63.426853707414836, -62.82565130260521, -62.2244488977956, -61.62324649298597, -61.02204408817636, -60.42084168336673, -59.81963927855712, -59.21843687374749, -58.61723446893788, -58.016032064128254, -57.41482965931864, -56.813627254509015, -56.2124248496994, -55.611222444889776, -55.010020040080164, -54.40881763527054, -53.807615230460925, -53.2064128256513, -52.605210420841686, -52.00400801603206, -51.40280561122245, -50.80160320641282, -50.20040080160321, -49.59919839679358, -48.99799599198397, -48.39679358717434, -47.79559118236473, -47.194388777555105, -46.59318637274549, -45.991983967935866, -45.390781563126254, -44.78957915831663, -44.188376753507015, -43.58717434869739, -42.985971943887776, -42.38476953907815, -41.78356713426854, -41.18236472945891, -40.5811623246493, -39.979959919839686, -39.37875751503006, -38.77755511022045, -38.17635270541082, -37.57515030060121, -36.97394789579158, -36.37274549098197, -35.77154308617234, -35.17034068136273, -34.569138276553105, -33.96793587174349, -33.366733466933866, -32.76553106212425, -32.16432865731463, -31.563126252505015, -30.961923847695388, -30.360721442885776, -29.75951903807615, -29.158316633266537, -28.55711422845691, -27.9559118236473, -27.354709418837672, -26.75350701402806, -26.152304609218433, -25.55110220440882, -24.949899799599194, -24.348697394789582, -23.747494989979955, -23.146292585170343, -22.545090180360717, -21.943887775551104, -21.342685370741492, -20.74148296593185, -20.14028056112224, -19.539078156312627, -18.937875751503014, -18.336673346693374, -17.73547094188376, -17.13426853707415, -16.533066132264537, -15.931863727454896, -15.330661322645284, -14.729458917835672, -14.12825651302606, -13.527054108216447, -12.925851703406806, -12.324649298597194, -11.723446893787582, -11.12224448897797, -10.521042084168329, -9.919839679358716, -9.318637274549104, -8.717434869739492, -8.116232464929851, -7.515030060120239, -6.913827655310627, -6.312625250501014, -5.711422845691374, -5.110220440881761, -4.509018036072149, -3.9078156312625367, -3.306613226452896, -2.7054108216432837, -2.1042084168336714, -1.5030060120240591, -0.9018036072144184, -0.30060120240480614, 0.30060120240480614, 0.9018036072144184, 1.5030060120240591, 2.1042084168336714, 2.7054108216432837, 3.306613226452896, 3.9078156312625367, 4.509018036072149, 5.110220440881761, 5.711422845691374, 6.312625250501014, 6.913827655310627, 7.515030060120239, 8.116232464929851, 8.717434869739492, 9.318637274549104, 9.919839679358716, 10.521042084168329, 11.12224448897797, 11.723446893787582, 12.324649298597194, 12.925851703406806, 13.527054108216447, 14.12825651302606, 14.729458917835672, 15.330661322645284, 15.931863727454896, 16.533066132264537, 17.13426853707415, 17.73547094188376, 18.336673346693374, 18.937875751503014, 19.539078156312627, 20.14028056112224, 20.74148296593185, 21.342685370741492, 21.943887775551104, 22.545090180360717, 23.14629258517033, 23.74749498997997, 24.348697394789582, 24.949899799599194, 25.551102204408807, 26.152304609218447, 26.75350701402806, 27.354709418837672, 27.955911823647284, 28.557114228456925, 29.158316633266537, 29.75951903807615, 30.36072144288576, 30.961923847695402, 31.563126252505015, 32.16432865731463, 32.76553106212424, 33.36673346693388, 33.96793587174349, 34.569138276553105, 35.17034068136272, 35.77154308617236, 36.37274549098197, 36.97394789579158, 37.575150300601194, 38.176352705410835, 38.77755511022045, 39.37875751503006, 39.97995991983967, 40.58116232464931, 41.182364729458925, 41.78356713426854, 42.38476953907815, 42.98597194388776, 43.5871743486974, 44.188376753507015, 44.78957915831663, 45.39078156312624, 45.99198396793588, 46.59318637274549, 47.194388777555105, 47.79559118236472, 48.39679358717436, 48.99799599198397, 49.59919839679358, 50.200400801603195, 50.801603206412835, 51.40280561122245, 52.00400801603206, 52.60521042084167, 53.20641282565131, 53.807615230460925, 54.40881763527054, 55.01002004008015, 55.61122244488979, 56.2124248496994, 56.813627254509015, 57.41482965931863, 58.01603206412827, 58.61723446893788, 59.21843687374749, 59.819639278557105, 60.420841683366746, 61.02204408817636, 61.62324649298597, 62.22444889779558, 62.82565130260522, 63.426853707414836, 64.02805611222445, 64.62925851703406, 65.2304609218437, 65.83166332665331, 66.43286573146293, 67.03406813627254, 67.63527054108218, 68.23647294589179, 68.8376753507014, 69.43887775551102, 70.04008016032063, 70.64128256513027, 71.24248496993988, 71.84368737474949, 72.4448897795591, 73.04609218436875, 73.64729458917836, 74.24849699398797, 74.84969939879758, 75.45090180360722, 76.05210420841684, 76.65330661322645, 77.25450901803606, 77.8557114228457, 78.45691382765531, 79.05811623246493, 79.65931863727454, 80.26052104208418, 80.86172344689379, 81.4629258517034, 82.06412825651302, 82.66533066132266, 83.26653306613227, 83.86773547094188, 84.4689378757515, 85.07014028056113, 85.67134268537075, 86.27254509018036, 86.87374749498997, 87.47494989979961, 88.07615230460922, 88.67735470941884, 89.27855711422845, 89.87975951903809, 90.4809619238477, 91.08216432865731, 91.68336673346693, 92.28456913827657, 92.88577154308618, 93.48697394789579, 94.0881763527054, 94.68937875751504, 95.29058116232466, 95.89178356713427, 96.49298597194388, 97.0941883767535, 97.69539078156313, 98.29659318637275, 98.89779559118236, 99.49899799599197, 100.10020040080161, 100.70140280561122, 101.30260521042084, 101.90380761523045, 102.50501002004009, 103.1062124248497, 103.70741482965931, 104.30861723446893, 104.90981963927857, 105.51102204408818, 106.11222444889779, 106.7134268537074, 107.31462925851702, 107.91583166332663, 108.5170340681363, 109.11823647294591, 109.71943887775552, 110.32064128256513, 110.92184368737475, 111.52304609218436, 112.12424849699397, 112.72545090180358, 113.32665330661325, 113.92785571142286, 114.52905811623248, 115.13026052104209, 115.7314629258517, 116.33266533066131, 116.93386773547093, 117.53507014028054, 118.13627254509021, 118.73747494989982, 119.33867735470943, 119.93987975951904, 120.54108216432866, 121.14228456913827, 121.74348697394788, 122.3446893787575, 122.9458917835671, 123.54709418837678, 124.14829659318639, 124.749498997996, 125.35070140280561, 125.95190380761522, 126.55310621242484, 127.15430861723445, 127.75551102204406, 128.35671342685373, 128.95791583166334, 129.55911823647295, 130.16032064128257, 130.76152304609218, 131.3627254509018, 131.9639278557114, 132.56513026052102, 133.16633266533069, 133.7675350701403, 134.3687374749499, 134.96993987975952, 135.57114228456913, 136.17234468937875, 136.77354709418836, 137.37474949899797, 137.97595190380764, 138.57715430861725, 139.17835671342687, 139.77955911823648, 140.3807615230461, 140.9819639278557, 141.58316633266531, 142.18436873747493, 142.7855711422846, 143.3867735470942, 143.98797595190382, 144.58917835671343, 145.19038076152304, 145.79158316633266, 146.39278557114227, 146.99398797595188, 147.59519038076155, 148.19639278557116, 148.79759519038078, 149.3987975951904, 150.0])\n", " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", " \n", "\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.x = d3.scale.linear()\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x = d3.scale.linear()\n", " .domain([-150.0, 150.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.legend = L.control({position: 'topright'});\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.legend.addTo(map_6d53fbbaad162eaab379a276c506f12b);\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.legend = L.control({position: 'topright'});\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.legend.addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", "\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.xAxis = d3.svg.axis()\n", - " .scale(color_map_4f049356591415c6df8ce4c6950d13b1.x)\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.xAxis = d3.svg.axis()\n", + " .scale(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([-150.0, '', -90.0, '', -30.0, '', 30.0, '', 90.0, '', 150.0, '']);\n", "\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.g = color_map_4f049356591415c6df8ce4c6950d13b1.svg.append("g")\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.g = color_map_c6f2ab527f0a2bbefdb5dce185bf197c.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.g.selectAll("rect")\n", - " .data(color_map_4f049356591415c6df8ce4c6950d13b1.color.range().map(function(d, i) {\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.g.selectAll("rect")\n", + " .data(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_4f049356591415c6df8ce4c6950d13b1.x(color_map_4f049356591415c6df8ce4c6950d13b1.color.domain()[i - 1]) : color_map_4f049356591415c6df8ce4c6950d13b1.x.range()[0],\n", - " x1: i < color_map_4f049356591415c6df8ce4c6950d13b1.color.domain().length ? color_map_4f049356591415c6df8ce4c6950d13b1.x(color_map_4f049356591415c6df8ce4c6950d13b1.color.domain()[i]) : color_map_4f049356591415c6df8ce4c6950d13b1.x.range()[1],\n", + " x0: i ? color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color.domain()[i - 1]) : color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x.range()[0],\n", + " x1: i < color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color.domain().length ? color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color.domain()[i]) : color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -3990,7 +3990,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_4f049356591415c6df8ce4c6950d13b1.g.call(color_map_4f049356591415c6df8ce4c6950d13b1.xAxis).append("text")\n", + " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.g.call(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -3999,10 +3999,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 16, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } @@ -4054,7 +4054,7 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 14, "id": "7213b9f2-8444-462b-a994-3e8cbb6beed2", "metadata": {}, "outputs": [], @@ -4114,7 +4114,7 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 15, "id": "22a738e8", "metadata": {}, "outputs": [ @@ -5036,7 +5036,7 @@ "" ] }, - "execution_count": 39, + "execution_count": 15, "metadata": {}, "output_type": "execute_result" } @@ -5048,7 +5048,7 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": 16, "id": "618ba9da", "metadata": {}, "outputs": [ @@ -5970,7 +5970,7 @@ "" ] }, - "execution_count": 40, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } @@ -5982,7 +5982,7 @@ }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 17, "id": "f01b3d85", "metadata": {}, "outputs": [ @@ -6017,7 +6017,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_3ca96b556da2d21e28064b7bfefca351 {\n", + " #map_880b2c91c441839765db2b4e4c53c6e9 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6085,7 +6085,22 @@ " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", - " ← Reflectivity (-10 to 50 dBZ)\n", + " <div style="text-align: center;">← Reflectivity</div>\n", + " \n", + " <div style="margin-top: 8px; background: rgba(255,255,255,0.9); padding: 4px; border-radius: 3px;">\n", + " <div style="\n", + " width: 150px;\n", + " height: 20px;\n", + " background: linear-gradient(to right, rgba(48, 18, 59, 1) 0.0%, rgba(69, 96, 214, 1) 11.11111111111111%, rgba(54, 168, 249, 1) 22.22222222222222%, rgba(26, 228, 182, 1) 33.33333333333333%, rgba(113, 253, 95, 1) 44.44444444444444%, rgba(200, 238, 51, 1) 55.55555555555556%, rgba(249, 186, 56, 1) 66.66666666666666%, rgba(245, 104, 23, 1) 77.77777777777779%, rgba(201, 41, 3, 1) 88.88888888888889%, rgba(122, 4, 2, 1) 100.0%);\n", + " border: 1px solid #ccc;\n", + " margin: 0 auto;\n", + " "></div>\n", + " <div style="display: flex; justify-content: space-between; width: 150px; font-size: 11px; margin-top: 2px;">\n", + " <span>-10 dBZ</span>\n", + " <span>50 dBZ</span>\n", + " </div>\n", + " </div>\n", + " \n", " </div>\n", " <div style="\n", " position: fixed;\n", @@ -6100,7 +6115,22 @@ " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", - " Velocity (-75 to 75 m/s) β†’\n", + " <div style="text-align: center;">Velocity β†’</div>\n", + " \n", + " <div style="margin-top: 8px; background: rgba(255,255,255,0.9); padding: 4px; border-radius: 3px;">\n", + " <div style="\n", + " width: 150px;\n", + " height: 20px;\n", + " background: linear-gradient(to right, rgba(0, 0, 76, 1) 0.0%, rgba(0, 0, 154, 1) 11.11111111111111%, rgba(0, 0, 233, 1) 22.22222222222222%, rgba(85, 85, 255, 1) 33.33333333333333%, rgba(197, 197, 255, 1) 44.44444444444444%, rgba(255, 197, 197, 1) 55.55555555555556%, rgba(255, 85, 85, 1) 66.66666666666666%, rgba(239, 0, 0, 1) 77.77777777777779%, rgba(183, 0, 0, 1) 88.88888888888889%, rgba(127, 0, 0, 1) 100.0%);\n", + " border: 1px solid #ccc;\n", + " margin: 0 auto;\n", + " "></div>\n", + " <div style="display: flex; justify-content: space-between; width: 150px; font-size: 11px; margin-top: 2px;">\n", + " <span>-75 m/s</span>\n", + " <span>75 m/s</span>\n", + " </div>\n", + " </div>\n", + " \n", " </div>\n", " \n", " \n", @@ -6122,14 +6152,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_3ca96b556da2d21e28064b7bfefca351" ></div>\n", + " <div class="folium-map" id="map_880b2c91c441839765db2b4e4c53c6e9" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_3ca96b556da2d21e28064b7bfefca351 = L.map(\n", - " "map_3ca96b556da2d21e28064b7bfefca351",\n", + " var map_880b2c91c441839765db2b4e4c53c6e9 = L.map(\n", + " "map_880b2c91c441839765db2b4e4c53c6e9",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6141,13 +6171,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", + " L.control.scale().addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_61f73836c4f59c43ea42f94e4aa3e68d = L.tileLayer(\n", + " var tile_layer_fa0368521ff004853c8f9f8ee09d2657 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6164,10 +6194,10 @@ " );\n", " \n", " \n", - " tile_layer_61f73836c4f59c43ea42f94e4aa3e68d.addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", + " tile_layer_fa0368521ff004853c8f9f8ee09d2657.addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", " \n", " \n", - " var tile_layer_995892002cbe62bdab4c964c1893c91c = L.tileLayer(\n", + " var tile_layer_6bc9fadb842fe0c29878e02eada16756 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6184,10 +6214,10 @@ " );\n", " \n", " \n", - " tile_layer_995892002cbe62bdab4c964c1893c91c.addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", + " tile_layer_6bc9fadb842fe0c29878e02eada16756.addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", " \n", " \n", - " var tile_layer_9692a2822f19163cb3be2da1f0723488 = L.tileLayer(\n", + " var tile_layer_812c40a0f89fe47f06a15bef9ab48182 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", " {\n", " "minZoom": 0,\n", @@ -6204,10 +6234,10 @@ " );\n", " \n", " \n", - " tile_layer_9692a2822f19163cb3be2da1f0723488.addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", + " tile_layer_812c40a0f89fe47f06a15bef9ab48182.addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", " \n", " \n", - " var tile_layer_ab2c9e59dafb43391a1272ee34dd9d81 = L.tileLayer(\n", + " var tile_layer_edbbfd8c45a6536d7c6602a663aca838 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6224,63 +6254,74 @@ " );\n", " \n", " \n", - " tile_layer_ab2c9e59dafb43391a1272ee34dd9d81.addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", + " tile_layer_edbbfd8c45a6536d7c6602a663aca838.addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", " \n", " \n", - " var side_by_side_layers_987b084deb47abb6a0a3e7d4c2bd8f65 = L.control.sideBySide(\n", - " tile_layer_9692a2822f19163cb3be2da1f0723488, tile_layer_ab2c9e59dafb43391a1272ee34dd9d81\n", - " ).addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", + " var side_by_side_layers_cb10c3e8635be8a520389ab2c72b38a4 = L.control.sideBySide(\n", + " tile_layer_812c40a0f89fe47f06a15bef9ab48182, tile_layer_edbbfd8c45a6536d7c6602a663aca838\n", + " ).addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", " \n", " \n", - " var layer_control_645fedc7b08ec9bb6e10710130a7736f_layers = {\n", + " var layer_control_4a5ed96c7b63a784f7c695971545d886_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_61f73836c4f59c43ea42f94e4aa3e68d,\n", + " "ESRI Satellite" : tile_layer_fa0368521ff004853c8f9f8ee09d2657,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_995892002cbe62bdab4c964c1893c91c,\n", - " "DOW7 Reflectivity" : tile_layer_9692a2822f19163cb3be2da1f0723488,\n", - " "DOW7 Velocity" : tile_layer_ab2c9e59dafb43391a1272ee34dd9d81,\n", + " "Place Labels" : tile_layer_6bc9fadb842fe0c29878e02eada16756,\n", + " "DOW7 Reflectivity" : tile_layer_812c40a0f89fe47f06a15bef9ab48182,\n", + " "DOW7 Velocity" : tile_layer_edbbfd8c45a6536d7c6602a663aca838,\n", " },\n", " };\n", - " let layer_control_645fedc7b08ec9bb6e10710130a7736f = L.control.layers(\n", - " layer_control_645fedc7b08ec9bb6e10710130a7736f_layers.base_layers,\n", - " layer_control_645fedc7b08ec9bb6e10710130a7736f_layers.overlays,\n", + " let layer_control_4a5ed96c7b63a784f7c695971545d886 = L.control.layers(\n", + " layer_control_4a5ed96c7b63a784f7c695971545d886_layers.base_layers,\n", + " layer_control_4a5ed96c7b63a784f7c695971545d886_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_3ca96b556da2d21e28064b7bfefca351);\n", + " ).addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 41, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Use the new plot_folium_SidebySide_layer_from_VEDA_STAC function from plotutils\n", + "# Get the colormap names from the collections\n", + "colormap_refl = collection_refl.extra_fields['renders']['dashboard']['colormap_name']\n", + "colormap_vel = collection_vel.extra_fields['renders']['dashboard']['colormap_name']\n", + "\n", "m = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", " tiles_url_left=tiles_refl[\"tiles\"][0],\n", " tiles_url_right=tiles_vel[\"tiles\"][0],\n", " center_coords=[41.668, -95.372],\n", " zoom_level=14,\n", " title=\"DOW7 Comparison β€” Harlan, IA β€” April 26, 2024\",\n", - " label_left=\"← Reflectivity (-10 to 50 dBZ)\",\n", - " label_right=\"Velocity (-75 to 75 m/s) β†’\",\n", + " label_left=\"← Reflectivity\",\n", + " label_right=\"Velocity β†’\",\n", " layer_name_left=\"DOW7 Reflectivity\",\n", " layer_name_right=\"DOW7 Velocity\",\n", " opacity=0.8,\n", " basemap_style='esri-satellite-labels',\n", " height=\"800px\",\n", - " width=\"100%\"\n", + " width=\"100%\",\n", + " # New parameters for HTML colorbars\n", + " colormap_left=colormap_refl,\n", + " colormap_right=colormap_vel,\n", + " rescale_left=(vmin_refl, vmax_refl),\n", + " rescale_right=(vmin_vel, vmax_vel),\n", + " units_left=\"dBZ\",\n", + " units_right=\"m/s\"\n", ")\n", "\n", "print(\"Interactive side-by-side comparison of DOW7 reflectivity and velocity data.\")\n", @@ -6303,7 +6344,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 18, "id": "2461b25d-de5d-42b1-b30d-464185144021", "metadata": {}, "outputs": [], @@ -6325,13 +6366,13 @@ "((vmin_rhohv, vmax_rhohv),) = dashboard_render_rhohv[\"rescale\"]\n", "colormap_name = collection_rhohv.extra_fields['renders']['dashboard']['colormap_name']\n", "\n", - "# Build reflectivity tile URL\n", + "# Build correlation coefficient tile URL\n", "response_rhohv = requests.get(\n", " f\"{RASTER_API_URL.rstrip('/')}/collections/{collection_id_rhohv}\"\n", " f\"/items/{item_rhohv.id}/WebMercatorQuad/tilejson.json?\"\n", " f\"&assets={assets_rhohv}\"\n", " f\"&color_formula=gamma+r+1.05&colormap_name={colormap_name}\"\n", - " f\"&rescale={vmin_refl},{vmax_refl}\",\n", + " f\"&rescale={vmin_rhohv},{vmax_rhohv}\",\n", ")\n", "response_rhohv.raise_for_status()\n", "tiles_rhohv = response_rhohv.json()\n", @@ -6363,7 +6404,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 19, "id": "f89a00f6-ac59-486e-9af7-5f1d42d1bab1", "metadata": {}, "outputs": [ @@ -6399,7 +6440,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_26e5e02073e36b82dcfe23a8844792b6 {\n", + " #map_39c36108913b555af0569e2f3ea39caa {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6467,7 +6508,22 @@ " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", - " ← Correlation Coefficient (0 to 1)\n", + " <div style="text-align: center;">← Correlation Coefficient</div>\n", + " \n", + " <div style="margin-top: 8px; background: rgba(255,255,255,0.9); padding: 4px; border-radius: 3px;">\n", + " <div style="\n", + " width: 150px;\n", + " height: 20px;\n", + " background: linear-gradient(to right, rgba(48, 18, 59, 1) 0.0%, rgba(69, 96, 214, 1) 11.11111111111111%, rgba(54, 168, 249, 1) 22.22222222222222%, rgba(26, 228, 182, 1) 33.33333333333333%, rgba(113, 253, 95, 1) 44.44444444444444%, rgba(200, 238, 51, 1) 55.55555555555556%, rgba(249, 186, 56, 1) 66.66666666666666%, rgba(245, 104, 23, 1) 77.77777777777779%, rgba(201, 41, 3, 1) 88.88888888888889%, rgba(122, 4, 2, 1) 100.0%);\n", + " border: 1px solid #ccc;\n", + " margin: 0 auto;\n", + " "></div>\n", + " <div style="display: flex; justify-content: space-between; width: 150px; font-size: 11px; margin-top: 2px;">\n", + " <span>0</span>\n", + " <span>1</span>\n", + " </div>\n", + " </div>\n", + " \n", " </div>\n", " <div style="\n", " position: fixed;\n", @@ -6482,7 +6538,22 @@ " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", - " Velocity (-75 to 75 m/s) β†’\n", + " <div style="text-align: center;">Velocity β†’</div>\n", + " \n", + " <div style="margin-top: 8px; background: rgba(255,255,255,0.9); padding: 4px; border-radius: 3px;">\n", + " <div style="\n", + " width: 150px;\n", + " height: 20px;\n", + " background: linear-gradient(to right, rgba(0, 0, 76, 1) 0.0%, rgba(0, 0, 154, 1) 11.11111111111111%, rgba(0, 0, 233, 1) 22.22222222222222%, rgba(85, 85, 255, 1) 33.33333333333333%, rgba(197, 197, 255, 1) 44.44444444444444%, rgba(255, 197, 197, 1) 55.55555555555556%, rgba(255, 85, 85, 1) 66.66666666666666%, rgba(239, 0, 0, 1) 77.77777777777779%, rgba(183, 0, 0, 1) 88.88888888888889%, rgba(127, 0, 0, 1) 100.0%);\n", + " border: 1px solid #ccc;\n", + " margin: 0 auto;\n", + " "></div>\n", + " <div style="display: flex; justify-content: space-between; width: 150px; font-size: 11px; margin-top: 2px;">\n", + " <span>-75 m/s</span>\n", + " <span>75 m/s</span>\n", + " </div>\n", + " </div>\n", + " \n", " </div>\n", " \n", " \n", @@ -6504,14 +6575,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_26e5e02073e36b82dcfe23a8844792b6" ></div>\n", + " <div class="folium-map" id="map_39c36108913b555af0569e2f3ea39caa" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_26e5e02073e36b82dcfe23a8844792b6 = L.map(\n", - " "map_26e5e02073e36b82dcfe23a8844792b6",\n", + " var map_39c36108913b555af0569e2f3ea39caa = L.map(\n", + " "map_39c36108913b555af0569e2f3ea39caa",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -6523,13 +6594,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_26e5e02073e36b82dcfe23a8844792b6);\n", + " L.control.scale().addTo(map_39c36108913b555af0569e2f3ea39caa);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_eb5709c7d69189a02303264eff58c918 = L.tileLayer(\n", + " var tile_layer_2520013e4dab6d96646f911dcbd657e6 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6546,10 +6617,10 @@ " );\n", " \n", " \n", - " tile_layer_eb5709c7d69189a02303264eff58c918.addTo(map_26e5e02073e36b82dcfe23a8844792b6);\n", + " tile_layer_2520013e4dab6d96646f911dcbd657e6.addTo(map_39c36108913b555af0569e2f3ea39caa);\n", " \n", " \n", - " var tile_layer_baca95091e5b3ff970fea2ecf98b1ed3 = L.tileLayer(\n", + " var tile_layer_591cced69b59baaef7f67178f722c15c = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6566,10 +6637,10 @@ " );\n", " \n", " \n", - " tile_layer_baca95091e5b3ff970fea2ecf98b1ed3.addTo(map_26e5e02073e36b82dcfe23a8844792b6);\n", + " tile_layer_591cced69b59baaef7f67178f722c15c.addTo(map_39c36108913b555af0569e2f3ea39caa);\n", " \n", " \n", - " var tile_layer_51ba7a4b8cd5ea1ecba08155c28a74ba = L.tileLayer(\n", + " var tile_layer_4f8cc79b56527ea4ab038c7be3304f0a = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C1",\n", " {\n", " "minZoom": 0,\n", @@ -6586,10 +6657,10 @@ " );\n", " \n", " \n", - " tile_layer_51ba7a4b8cd5ea1ecba08155c28a74ba.addTo(map_26e5e02073e36b82dcfe23a8844792b6);\n", + " tile_layer_4f8cc79b56527ea4ab038c7be3304f0a.addTo(map_39c36108913b555af0569e2f3ea39caa);\n", " \n", " \n", - " var tile_layer_22b6a25c5e6ad179d94d0db133e19114 = L.tileLayer(\n", + " var tile_layer_3bcdb97286b64f5f42198600e966a21b = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vg-greenfield/items/DOW_Greenfield_VG_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6606,63 +6677,74 @@ " );\n", " \n", " \n", - " tile_layer_22b6a25c5e6ad179d94d0db133e19114.addTo(map_26e5e02073e36b82dcfe23a8844792b6);\n", + " tile_layer_3bcdb97286b64f5f42198600e966a21b.addTo(map_39c36108913b555af0569e2f3ea39caa);\n", " \n", " \n", - " var side_by_side_layers_cfb04d7b4522ab6b6400131d71ea5a8d = L.control.sideBySide(\n", - " tile_layer_51ba7a4b8cd5ea1ecba08155c28a74ba, tile_layer_22b6a25c5e6ad179d94d0db133e19114\n", - " ).addTo(map_26e5e02073e36b82dcfe23a8844792b6);\n", + " var side_by_side_layers_79fd0589142bd270f358022a0a663529 = L.control.sideBySide(\n", + " tile_layer_4f8cc79b56527ea4ab038c7be3304f0a, tile_layer_3bcdb97286b64f5f42198600e966a21b\n", + " ).addTo(map_39c36108913b555af0569e2f3ea39caa);\n", " \n", " \n", - " var layer_control_57538643f1ada37371992f424673bcc0_layers = {\n", + " var layer_control_72d346e373480d91236a177f18e9df39_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_eb5709c7d69189a02303264eff58c918,\n", + " "ESRI Satellite" : tile_layer_2520013e4dab6d96646f911dcbd657e6,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_baca95091e5b3ff970fea2ecf98b1ed3,\n", - " "DOW7 Correlation Coefficient" : tile_layer_51ba7a4b8cd5ea1ecba08155c28a74ba,\n", - " "DOW7 Velocity" : tile_layer_22b6a25c5e6ad179d94d0db133e19114,\n", + " "Place Labels" : tile_layer_591cced69b59baaef7f67178f722c15c,\n", + " "DOW7 Correlation Coefficient" : tile_layer_4f8cc79b56527ea4ab038c7be3304f0a,\n", + " "DOW7 Velocity" : tile_layer_3bcdb97286b64f5f42198600e966a21b,\n", " },\n", " };\n", - " let layer_control_57538643f1ada37371992f424673bcc0 = L.control.layers(\n", - " layer_control_57538643f1ada37371992f424673bcc0_layers.base_layers,\n", - " layer_control_57538643f1ada37371992f424673bcc0_layers.overlays,\n", + " let layer_control_72d346e373480d91236a177f18e9df39 = L.control.layers(\n", + " layer_control_72d346e373480d91236a177f18e9df39_layers.base_layers,\n", + " layer_control_72d346e373480d91236a177f18e9df39_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_26e5e02073e36b82dcfe23a8844792b6);\n", + " ).addTo(map_39c36108913b555af0569e2f3ea39caa);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 24, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Use the new plot_folium_SidebySide_layer_from_VEDA_STAC function from plotutils\n", + "# Get the colormap names from the collections\n", + "colormap_rhohv = collection_rhohv.extra_fields['renders']['dashboard']['colormap_name']\n", + "colormap_vel = collection_vel.extra_fields['renders']['dashboard']['colormap_name']\n", + "\n", "m = putils.plot_folium_SidebySide_layer_from_VEDA_STAC(\n", - " tiles_url_left=tiles_refl[\"tiles\"][0],\n", + " tiles_url_left=tiles_rhohv[\"tiles\"][0],\n", " tiles_url_right=tiles_vel[\"tiles\"][0],\n", " center_coords=[41.3036, -94.4569],\n", " zoom_level=16,\n", " title=\"DOW7 Comparison β€” Greenfield, IA β€” May 21, 2024\",\n", - " label_left=\"← Correlation Coefficient (0 to 1)\",\n", - " label_right=\"Velocity (-75 to 75 m/s) β†’\",\n", + " label_left=\"← Correlation Coefficient\",\n", + " label_right=\"Velocity β†’\",\n", " layer_name_left=\"DOW7 Correlation Coefficient\",\n", " layer_name_right=\"DOW7 Velocity\",\n", " opacity=0.8,\n", " basemap_style='esri-satellite-labels',\n", " height=\"800px\",\n", - " width=\"100%\"\n", + " width=\"100%\",\n", + " # New parameters for HTML colorbars\n", + " colormap_left=colormap_rhohv,\n", + " colormap_right=colormap_vel,\n", + " rescale_left=(vmin_rhohv, vmax_rhohv),\n", + " rescale_right=(vmin_vel, vmax_vel),\n", + " units_left=\"\", # Correlation coefficient is unitless\n", + " units_right=\"m/s\"\n", ")\n", "\n", "print(\"Interactive side-by-side comparison of DOW7 correlation coefficient and velocity data.\")\n", @@ -6686,7 +6768,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 20, "id": "efb13664-1597-478a-b8e5-fac20e6ac481", "metadata": {}, "outputs": [ @@ -7608,7 +7690,7 @@ "" ] }, - "execution_count": 25, + "execution_count": 20, "metadata": {}, "output_type": "execute_result" } @@ -7637,7 +7719,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 21, "id": "14d08573-78ea-45bf-baf0-58cddf840401", "metadata": {}, "outputs": [ @@ -7670,7 +7752,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 22, "id": "b062836d-83f6-414d-91d2-9255e0b46a3c", "metadata": {}, "outputs": [ @@ -7703,7 +7785,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_85d7b52fa3361047e288d46ec5116c7c {\n", + " #map_9604a465b2e2fda357f1f77b92e774f5 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -7757,14 +7839,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_85d7b52fa3361047e288d46ec5116c7c" ></div>\n", + " <div class="folium-map" id="map_9604a465b2e2fda357f1f77b92e774f5" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_85d7b52fa3361047e288d46ec5116c7c = L.map(\n", - " "map_85d7b52fa3361047e288d46ec5116c7c",\n", + " var map_9604a465b2e2fda357f1f77b92e774f5 = L.map(\n", + " "map_9604a465b2e2fda357f1f77b92e774f5",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -7776,13 +7858,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_85d7b52fa3361047e288d46ec5116c7c);\n", + " L.control.scale().addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_8da0bab04ea7ee80dd3819203cab5f67 = L.tileLayer(\n", + " var tile_layer_ccc57bd051baf6bdc8c8e9772ff4ae3c = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -7799,10 +7881,10 @@ " );\n", " \n", " \n", - " tile_layer_8da0bab04ea7ee80dd3819203cab5f67.addTo(map_85d7b52fa3361047e288d46ec5116c7c);\n", + " tile_layer_ccc57bd051baf6bdc8c8e9772ff4ae3c.addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", " \n", " \n", - " var tile_layer_3454436f56a6c01bdb37947feff7092f = L.tileLayer(\n", + " var tile_layer_afc14deb22b12d2d97e02915c6e5f4c1 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -7819,10 +7901,10 @@ " );\n", " \n", " \n", - " tile_layer_3454436f56a6c01bdb37947feff7092f.addTo(map_85d7b52fa3361047e288d46ec5116c7c);\n", + " tile_layer_afc14deb22b12d2d97e02915c6e5f4c1.addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", " \n", " \n", - " var tile_layer_2a6474a4a69184147ac24574e4961e9d = L.tileLayer(\n", + " var tile_layer_ee2323dfab993e7ecdb3d10a20d77659 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=gist_ncar\\u0026rescale=55%2C250",\n", " {\n", " "minZoom": 0,\n", @@ -7839,67 +7921,67 @@ " );\n", " \n", " \n", - " tile_layer_2a6474a4a69184147ac24574e4961e9d.addTo(map_85d7b52fa3361047e288d46ec5116c7c);\n", + " tile_layer_ee2323dfab993e7ecdb3d10a20d77659.addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", " \n", " \n", - " var layer_control_7a3f568d69382eacb2fae8523f50d759_layers = {\n", + " var layer_control_752517238388447dc8b22c52dc1e57d9_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_8da0bab04ea7ee80dd3819203cab5f67,\n", + " "ESRI Satellite" : tile_layer_ccc57bd051baf6bdc8c8e9772ff4ae3c,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_3454436f56a6c01bdb37947feff7092f,\n", - " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_2a6474a4a69184147ac24574e4961e9d,\n", + " "Place Labels" : tile_layer_afc14deb22b12d2d97e02915c6e5f4c1,\n", + " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_ee2323dfab993e7ecdb3d10a20d77659,\n", " },\n", " };\n", - " let layer_control_7a3f568d69382eacb2fae8523f50d759 = L.control.layers(\n", - " layer_control_7a3f568d69382eacb2fae8523f50d759_layers.base_layers,\n", - " layer_control_7a3f568d69382eacb2fae8523f50d759_layers.overlays,\n", + " let layer_control_752517238388447dc8b22c52dc1e57d9 = L.control.layers(\n", + " layer_control_752517238388447dc8b22c52dc1e57d9_layers.base_layers,\n", + " layer_control_752517238388447dc8b22c52dc1e57d9_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_85d7b52fa3361047e288d46ec5116c7c);\n", + " ).addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", "\n", " \n", " \n", - " var color_map_ea0945d54f1bf3e8143ce1c9a8736b09 = {};\n", + " var color_map_8347a176623e0bfe545cffbd6c2188fd = {};\n", "\n", " \n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.color = d3.scale.threshold()\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.color = d3.scale.threshold()\n", " .domain([55.0, 55.390781563126254, 55.78156312625251, 56.17234468937876, 56.56312625250501, 56.95390781563126, 57.344689378757515, 57.73547094188377, 58.12625250501002, 58.51703406813627, 58.90781563126252, 59.298597194388776, 59.68937875751503, 60.08016032064128, 60.47094188376754, 60.86172344689379, 61.25250501002004, 61.64328657314629, 62.034068136272545, 62.4248496993988, 62.81563126252505, 63.2064128256513, 63.59719438877755, 63.987975951903806, 64.37875751503006, 64.76953907815631, 65.16032064128257, 65.55110220440882, 65.94188376753507, 66.33266533066133, 66.72344689378758, 67.11422845691382, 67.50501002004007, 67.89579158316633, 68.28657314629258, 68.67735470941884, 69.06813627254509, 69.45891783567134, 69.8496993987976, 70.24048096192385, 70.6312625250501, 71.02204408817636, 71.4128256513026, 71.80360721442887, 72.1943887775551, 72.58517034068136, 72.97595190380761, 73.36673346693387, 73.75751503006012, 74.14829659318637, 74.53907815631263, 74.92985971943888, 75.32064128256513, 75.71142284569139, 76.10220440881764, 76.49298597194388, 76.88376753507015, 77.27454909819639, 77.66533066132264, 78.0561122244489, 78.44689378757515, 78.8376753507014, 79.22845691382766, 79.61923847695391, 80.01002004008016, 80.40080160320642, 80.79158316633266, 81.18236472945893, 81.57314629258516, 81.96392785571142, 82.35470941883767, 82.74549098196393, 83.13627254509018, 83.52705410821643, 83.91783567134269, 84.30861723446894, 84.6993987975952, 85.09018036072145, 85.4809619238477, 85.87174348697394, 86.26252505010021, 86.65330661322645, 87.04408817635272, 87.43486973947896, 87.82565130260521, 88.21643286573146, 88.60721442885772, 88.99799599198397, 89.38877755511022, 89.77955911823648, 90.17034068136272, 90.56112224448898, 90.95190380761522, 91.34268537074149, 91.73346693386773, 92.12424849699399, 92.51503006012024, 92.90581162324649, 93.29659318637275, 93.687374749499, 94.07815631262525, 94.4689378757515, 94.85971943887776, 95.250501002004, 95.64128256513027, 96.03206412825651, 96.42284569138278, 96.81362725450902, 97.20440881763527, 97.59519038076152, 97.98597194388778, 98.37675350701403, 98.76753507014028, 99.15831663326654, 99.54909819639278, 99.93987975951904, 100.33066132264528, 100.72144288577155, 101.11222444889779, 101.50300601202404, 101.8937875751503, 102.28456913827655, 102.6753507014028, 103.06613226452906, 103.45691382765531, 103.84769539078155, 104.23847695390782, 104.62925851703406, 105.02004008016033, 105.41082164328657, 105.80160320641284, 106.19238476953907, 106.58316633266533, 106.97394789579158, 107.36472945891784, 107.75551102204409, 108.14629258517034, 108.5370741482966, 108.92785571142284, 109.3186372745491, 109.70941883767534, 110.10020040080161, 110.49098196392785, 110.88176352705412, 111.27254509018036, 111.66332665330661, 112.05410821643287, 112.44488977955912, 112.83567134268537, 113.22645290581163, 113.61723446893788, 114.00801603206412, 114.39879759519039, 114.78957915831663, 115.1803607214429, 115.57114228456913, 115.96192384769539, 116.35270541082164, 116.7434869739479, 117.13426853707415, 117.5250501002004, 117.91583166332666, 118.3066132264529, 118.69739478957916, 119.08817635270542, 119.47895791583166, 119.86973947895791, 120.26052104208416, 120.65130260521042, 121.04208416833667, 121.43286573146293, 121.82364729458918, 122.21442885771543, 122.60521042084169, 122.99599198396794, 123.3867735470942, 123.77755511022045, 124.16833667334669, 124.55911823647294, 124.9498997995992, 125.34068136272545, 125.7314629258517, 126.12224448897796, 126.51302605210421, 126.90380761523046, 127.29458917835672, 127.68537074148297, 128.07615230460922, 128.46693386773546, 128.85771543086173, 129.24849699398797, 129.6392785571142, 130.03006012024048, 130.42084168336675, 130.81162324649299, 131.20240480961922, 131.5931863727455, 131.98396793587176, 132.374749498998, 132.76553106212424, 133.1563126252505, 133.54709418837675, 133.937875751503, 134.32865731462925, 134.71943887775552, 135.11022044088176, 135.501002004008, 135.89178356713427, 136.28256513026054, 136.67334669338678, 137.06412825651302, 137.45490981963928, 137.84569138276555, 138.23647294589176, 138.62725450901803, 139.0180360721443, 139.40881763527054, 139.79959919839678, 140.19038076152304, 140.5811623246493, 140.97194388777555, 141.3627254509018, 141.75350701402806, 142.14428857715433, 142.53507014028057, 142.9258517034068, 143.31663326653307, 143.7074148296593, 144.09819639278555, 144.48897795591182, 144.8797595190381, 145.27054108216433, 145.66132264529057, 146.05210420841684, 146.4428857715431, 146.83366733466934, 147.22444889779558, 147.61523046092185, 148.0060120240481, 148.39679358717433, 148.7875751503006, 149.17835671342687, 149.5691382765531, 149.95991983967934, 150.3507014028056, 150.74148296593188, 151.13226452905812, 151.52304609218436, 151.91382765531063, 152.3046092184369, 152.6953907815631, 153.08617234468937, 153.47695390781564, 153.86773547094188, 154.25851703406812, 154.6492985971944, 155.04008016032066, 155.4308617234469, 155.82164328657313, 156.2124248496994, 156.60320641282567, 156.9939879759519, 157.38476953907815, 157.77555110220442, 158.16633266533066, 158.5571142284569, 158.94789579158316, 159.33867735470943, 159.72945891783567, 160.1202404809619, 160.51102204408818, 160.90180360721445, 161.2925851703407, 161.68336673346693, 162.0741482965932, 162.46492985971943, 162.85571142284567, 163.24649298597194, 163.6372745490982, 164.02805611222445, 164.4188376753507, 164.80961923847696, 165.20040080160322, 165.59118236472946, 165.9819639278557, 166.37274549098197, 166.76352705410824, 167.15430861723445, 167.54509018036072, 167.93587174348698, 168.32665330661322, 168.71743486973946, 169.10821643286573, 169.498997995992, 169.88977955911824, 170.28056112224448, 170.67134268537075, 171.062124248497, 171.45290581162325, 171.8436873747495, 172.23446893787576, 172.625250501002, 173.01603206412824, 173.4068136272545, 173.79759519038078, 174.18837675350701, 174.57915831663325, 174.96993987975952, 175.3607214428858, 175.75150300601203, 176.14228456913827, 176.53306613226454, 176.92384769539078, 177.31462925851702, 177.70541082164328, 178.09619238476955, 178.4869739478958, 178.87775551102203, 179.2685370741483, 179.65931863727457, 180.0501002004008, 180.44088176352705, 180.8316633266533, 181.22244488977955, 181.6132264529058, 182.00400801603206, 182.39478957915833, 182.78557114228457, 183.17635270541084, 183.56713426853707, 183.9579158316633, 184.34869739478958, 184.73947895791582, 185.1302605210421, 185.52104208416833, 185.9118236472946, 186.30260521042084, 186.6933867735471, 187.08416833667334, 187.4749498997996, 187.86573146292585, 188.2565130260521, 188.64729458917836, 189.0380761523046, 189.42885771543087, 189.8196392785571, 190.21042084168337, 190.6012024048096, 190.99198396793588, 191.38276553106212, 191.7735470941884, 192.16432865731463, 192.5551102204409, 192.94589178356713, 193.33667334669337, 193.72745490981964, 194.11823647294588, 194.50901803607215, 194.8997995991984, 195.29058116232466, 195.6813627254509, 196.07214428857716, 196.4629258517034, 196.85370741482967, 197.2444889779559, 197.63527054108218, 198.02605210420842, 198.41683366733466, 198.80761523046093, 199.19839679358716, 199.58917835671343, 199.97995991983967, 200.37074148296594, 200.76152304609218, 201.15230460921845, 201.5430861723447, 201.93386773547095, 202.3246492985972, 202.71543086172343, 203.1062124248497, 203.49699398797594, 203.8877755511022, 204.27855711422845, 204.66933867735472, 205.06012024048096, 205.45090180360722, 205.84168336673346, 206.23246492985973, 206.62324649298597, 207.01402805611224, 207.40480961923848, 207.79559118236472, 208.18637274549098, 208.57715430861722, 208.9679358717435, 209.35871743486973, 209.749498997996, 210.14028056112224, 210.5310621242485, 210.92184368737475, 211.31262525050101, 211.70340681362725, 212.0941883767535, 212.48496993987976, 212.875751503006, 213.26653306613227, 213.6573146292585, 214.04809619238478, 214.43887775551102, 214.82965931863728, 215.22044088176352, 215.6112224448898, 216.00200400801603, 216.3927855711423, 216.78356713426854, 217.17434869739478, 217.56513026052104, 217.95591182364728, 218.34669338677355, 218.7374749498998, 219.12825651302606, 219.5190380761523, 219.90981963927857, 220.3006012024048, 220.69138276553107, 221.0821643286573, 221.47294589178355, 221.86372745490982, 222.25450901803606, 222.64529058116233, 223.03607214428857, 223.42685370741484, 223.81763527054107, 224.20841683366734, 224.59919839679358, 224.98997995991985, 225.3807615230461, 225.77154308617236, 226.1623246492986, 226.55310621242484, 226.9438877755511, 227.33466933867734, 227.7254509018036, 228.11623246492985, 228.50701402805612, 228.89779559118236, 229.28857715430863, 229.67935871743487, 230.07014028056113, 230.46092184368737, 230.85170340681364, 231.24248496993988, 231.63326653306612, 232.0240480961924, 232.41482965931863, 232.8056112224449, 233.19639278557113, 233.5871743486974, 233.97795591182364, 234.3687374749499, 234.75951903807615, 235.15030060120242, 235.54108216432866, 235.9318637274549, 236.32264529058116, 236.7134268537074, 237.10420841683367, 237.4949899799599, 237.88577154308618, 238.27655310621242, 238.6673346693387, 239.05811623246493, 239.4488977955912, 239.83967935871743, 240.2304609218437, 240.62124248496994, 241.01202404809618, 241.40280561122245, 241.7935871743487, 242.18436873747495, 242.5751503006012, 242.96593186372746, 243.3567134268537, 243.74749498997997, 244.1382765531062, 244.52905811623248, 244.91983967935872, 245.31062124248496, 245.70140280561122, 246.09218436873746, 246.48296593186373, 246.87374749498997, 247.26452905811624, 247.65531062124248, 248.04609218436875, 248.43687374749499, 248.82765531062125, 249.2184368737475, 249.60921843687376, 250.0])\n", " .range(['#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff']);\n", " \n", "\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.x = d3.scale.linear()\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.x = d3.scale.linear()\n", " .domain([55.0, 250.0])\n", " .range([0, 450 - 50]);\n", "\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.legend = L.control({position: 'topright'});\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.legend.addTo(map_85d7b52fa3361047e288d46ec5116c7c);\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.legend = L.control({position: 'topright'});\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.legend.addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", "\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.xAxis = d3.svg.axis()\n", - " .scale(color_map_ea0945d54f1bf3e8143ce1c9a8736b09.x)\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.xAxis = d3.svg.axis()\n", + " .scale(color_map_8347a176623e0bfe545cffbd6c2188fd.x)\n", " .orient("top")\n", " .tickSize(1)\n", " .tickValues([55.0, '', 94.0, '', 133.0, '', 172.0, '', 211.0, '', 250.0, '']);\n", "\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.svg = d3.select(".legend.leaflet-control").append("svg")\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.svg = d3.select(".legend.leaflet-control").append("svg")\n", " .attr("id", 'legend')\n", " .attr("width", 450)\n", " .attr("height", 40);\n", "\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.g = color_map_ea0945d54f1bf3e8143ce1c9a8736b09.svg.append("g")\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.g = color_map_8347a176623e0bfe545cffbd6c2188fd.svg.append("g")\n", " .attr("class", "key")\n", " .attr("fill", "black")\n", " .attr("transform", "translate(25,16)");\n", "\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.g.selectAll("rect")\n", - " .data(color_map_ea0945d54f1bf3e8143ce1c9a8736b09.color.range().map(function(d, i) {\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.g.selectAll("rect")\n", + " .data(color_map_8347a176623e0bfe545cffbd6c2188fd.color.range().map(function(d, i) {\n", " return {\n", - " x0: i ? color_map_ea0945d54f1bf3e8143ce1c9a8736b09.x(color_map_ea0945d54f1bf3e8143ce1c9a8736b09.color.domain()[i - 1]) : color_map_ea0945d54f1bf3e8143ce1c9a8736b09.x.range()[0],\n", - " x1: i < color_map_ea0945d54f1bf3e8143ce1c9a8736b09.color.domain().length ? color_map_ea0945d54f1bf3e8143ce1c9a8736b09.x(color_map_ea0945d54f1bf3e8143ce1c9a8736b09.color.domain()[i]) : color_map_ea0945d54f1bf3e8143ce1c9a8736b09.x.range()[1],\n", + " x0: i ? color_map_8347a176623e0bfe545cffbd6c2188fd.x(color_map_8347a176623e0bfe545cffbd6c2188fd.color.domain()[i - 1]) : color_map_8347a176623e0bfe545cffbd6c2188fd.x.range()[0],\n", + " x1: i < color_map_8347a176623e0bfe545cffbd6c2188fd.color.domain().length ? color_map_8347a176623e0bfe545cffbd6c2188fd.x(color_map_8347a176623e0bfe545cffbd6c2188fd.color.domain()[i]) : color_map_8347a176623e0bfe545cffbd6c2188fd.x.range()[1],\n", " z: d\n", " };\n", " }))\n", @@ -7909,7 +7991,7 @@ " .attr("width", function(d) { return d.x1 - d.x0; })\n", " .style("fill", function(d) { return d.z; });\n", "\n", - " color_map_ea0945d54f1bf3e8143ce1c9a8736b09.g.call(color_map_ea0945d54f1bf3e8143ce1c9a8736b09.xAxis).append("text")\n", + " color_map_8347a176623e0bfe545cffbd6c2188fd.g.call(color_map_8347a176623e0bfe545cffbd6c2188fd.xAxis).append("text")\n", " .attr("class", "caption")\n", " .attr("y", 21)\n", " .attr("fill", "black")\n", @@ -7918,10 +8000,10 @@ "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 33, + "execution_count": 22, "metadata": {}, "output_type": "execute_result" } @@ -7972,7 +8054,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 23, "id": "g0zklfvn8i", "metadata": {}, "outputs": [ @@ -8927,7 +9009,7 @@ "" ] }, - "execution_count": 29, + "execution_count": 23, "metadata": {}, "output_type": "execute_result" } @@ -8975,7 +9057,7 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 24, "id": "gc0d3a4crpj", "metadata": {}, "outputs": [ @@ -9930,7 +10012,7 @@ "" ] }, - "execution_count": 30, + "execution_count": 24, "metadata": {}, "output_type": "execute_result" } @@ -9987,7 +10069,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 25, "id": "9801hkznaop", "metadata": {}, "outputs": [ @@ -10013,7 +10095,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_2ca7e80bfc5bf261aacb07bedd8aade4 {\n", + " #map_af1a928c8aae606b15a0ff29b365afcf {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -10081,7 +10163,8 @@ " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", - " ← Pre-Tornado (May 20)\n", + " <div style="text-align: center;">← Pre-Tornado (May 20)</div>\n", + " \n", " </div>\n", " <div style="\n", " position: fixed;\n", @@ -10096,7 +10179,8 @@ " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", - " Post-Tornado (May 22) β†’\n", + " <div style="text-align: center;">Post-Tornado (May 22) β†’</div>\n", + " \n", " </div>\n", " \n", " \n", @@ -10118,14 +10202,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_2ca7e80bfc5bf261aacb07bedd8aade4" ></div>\n", + " <div class="folium-map" id="map_af1a928c8aae606b15a0ff29b365afcf" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_2ca7e80bfc5bf261aacb07bedd8aade4 = L.map(\n", - " "map_2ca7e80bfc5bf261aacb07bedd8aade4",\n", + " var map_af1a928c8aae606b15a0ff29b365afcf = L.map(\n", + " "map_af1a928c8aae606b15a0ff29b365afcf",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -10137,13 +10221,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", + " L.control.scale().addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_b84bb6538e4fa3fca0e5557d6dc8e423 = L.tileLayer(\n", + " var tile_layer_3b0f0d3457283000eff4b4175b404e82 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -10160,10 +10244,10 @@ " );\n", " \n", " \n", - " tile_layer_b84bb6538e4fa3fca0e5557d6dc8e423.addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", + " tile_layer_3b0f0d3457283000eff4b4175b404e82.addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", " \n", " \n", - " var tile_layer_9408c3c86fe0b87810cff3d923ce2d53 = L.tileLayer(\n", + " var tile_layer_a4848b67f54326186c9e33682b2e617c = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=3\\u0026bidx=2\\u0026bidx=1\\u0026rescale=0%2C2500\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -10180,10 +10264,10 @@ " );\n", " \n", " \n", - " tile_layer_9408c3c86fe0b87810cff3d923ce2d53.addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", + " tile_layer_a4848b67f54326186c9e33682b2e617c.addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", " \n", " \n", - " var tile_layer_55d0cd36d9c903dd4f50ee46d8390928 = L.tileLayer(\n", + " var tile_layer_1e616e9c27a463ca3b3c8dfb6e90e276 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=1\\u0026bidx=2\\u0026bidx=3\\u0026rescale=0%2C255\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -10200,42 +10284,42 @@ " );\n", " \n", " \n", - " tile_layer_55d0cd36d9c903dd4f50ee46d8390928.addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", + " tile_layer_1e616e9c27a463ca3b3c8dfb6e90e276.addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", " \n", " \n", - " var side_by_side_layers_4ad0268e4a94f48b857d7940efbe970b = L.control.sideBySide(\n", - " tile_layer_9408c3c86fe0b87810cff3d923ce2d53, tile_layer_55d0cd36d9c903dd4f50ee46d8390928\n", - " ).addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", + " var side_by_side_layers_e34aa6325d65ee7cc41d98436663078e = L.control.sideBySide(\n", + " tile_layer_a4848b67f54326186c9e33682b2e617c, tile_layer_1e616e9c27a463ca3b3c8dfb6e90e276\n", + " ).addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", " \n", " \n", - " var layer_control_16a92e2c5aa66ed98af32467878f70e6_layers = {\n", + " var layer_control_94325c70fced16b8f893dee9064441cf_layers = {\n", " base_layers : {\n", - " "CartoDB Positron" : tile_layer_b84bb6538e4fa3fca0e5557d6dc8e423,\n", + " "CartoDB Positron" : tile_layer_3b0f0d3457283000eff4b4175b404e82,\n", " },\n", " overlays : {\n", - " "PlanetScope Pre-Tornado" : tile_layer_9408c3c86fe0b87810cff3d923ce2d53,\n", - " "PlanetScope Post-Tornado" : tile_layer_55d0cd36d9c903dd4f50ee46d8390928,\n", + " "PlanetScope Pre-Tornado" : tile_layer_a4848b67f54326186c9e33682b2e617c,\n", + " "PlanetScope Post-Tornado" : tile_layer_1e616e9c27a463ca3b3c8dfb6e90e276,\n", " },\n", " };\n", - " let layer_control_16a92e2c5aa66ed98af32467878f70e6 = L.control.layers(\n", - " layer_control_16a92e2c5aa66ed98af32467878f70e6_layers.base_layers,\n", - " layer_control_16a92e2c5aa66ed98af32467878f70e6_layers.overlays,\n", + " let layer_control_94325c70fced16b8f893dee9064441cf = L.control.layers(\n", + " layer_control_94325c70fced16b8f893dee9064441cf_layers.base_layers,\n", + " layer_control_94325c70fced16b8f893dee9064441cf_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_2ca7e80bfc5bf261aacb07bedd8aade4);\n", + " ).addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, - "execution_count": 31, + "execution_count": 25, "metadata": {}, "output_type": "execute_result" } @@ -10275,7 +10359,7 @@ }, { "cell_type": "code", - "execution_count": 56, + "execution_count": 26, "id": "7bd64da5-fdb4-44d8-a0dc-3ed4b1160a12", "metadata": {}, "outputs": [], @@ -10292,7 +10376,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "gdal", "language": "python", "name": "python3" }, From 6b29824c70b23f1d30ac2db6f1ac996f34129146 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Thu, 21 Aug 2025 16:54:41 -0500 Subject: [PATCH 13/28] also added user-guide/data-services/rstudio-s3-access.qmd to match main branch --- .../data-services/rstudio-s3-access.qmd | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 user-guide/data-services/rstudio-s3-access.qmd diff --git a/user-guide/data-services/rstudio-s3-access.qmd b/user-guide/data-services/rstudio-s3-access.qmd new file mode 100644 index 00000000..0e09adda --- /dev/null +++ b/user-guide/data-services/rstudio-s3-access.qmd @@ -0,0 +1,34 @@ +--- +title: RStudio VEDA S3 Bucket Access +subtitle: Setting environment variables to access VEDA S3 buckets in RStudio +--- + +## Overview +Users of the RStudio image in the VEDA Jupyterhub cannot access VEDA AWS buckets the same way Python Pangeo users can. This is because RStudio does not read global system environmental variables, which is where VEDA’s AWS credentials are set. In this example, we will: + +1. Set environment variables + +2. Access data in a VEDA S3 bucket + +## Set Environment Variables + +```{r} +Sys.setenv(AWS_ROLE_ARN="arn:aws:iam::444055461661:role/nasa-veda-prod") +Sys.setenv(AWS_WEB_IDENTITY_TOKEN_FILE="/var/run/secrets/eks.amazonaws.com/serviceaccount/token") +``` + +## Access Data in a VEDA S3 Bucket + +Load package(s) + +```{r} +library(terra) +``` + +Open the data + +```{r} +vsi_path <- '/vsis3/veda-data-store/landslides-nc-flood/NC_Flood_Extent_2024-09-29.tif' +nc_flood <- rast(vsi_path) +print(nc_flood) +``` \ No newline at end of file From 72726717c7ef70fa4710f79ecc97ba492c54e999 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Thu, 21 Aug 2025 17:03:48 -0500 Subject: [PATCH 14/28] test changing eval to false in rstudio-s3 --- user-guide/data-services/rstudio-s3-access.qmd | 2 ++ 1 file changed, 2 insertions(+) diff --git a/user-guide/data-services/rstudio-s3-access.qmd b/user-guide/data-services/rstudio-s3-access.qmd index 0e09adda..4873e80f 100644 --- a/user-guide/data-services/rstudio-s3-access.qmd +++ b/user-guide/data-services/rstudio-s3-access.qmd @@ -1,6 +1,8 @@ --- title: RStudio VEDA S3 Bucket Access subtitle: Setting environment variables to access VEDA S3 buckets in RStudio +execute: + eval: false --- ## Overview From 6ff7d959a073ed8297dcd3b353ac40a3fde310f7 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Thu, 21 Aug 2025 17:07:34 -0500 Subject: [PATCH 15/28] test changing eval to false in rstudio-s3 --- user-guide/data-services/rstudio-s3-access.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user-guide/data-services/rstudio-s3-access.qmd b/user-guide/data-services/rstudio-s3-access.qmd index 4873e80f..d43a4bbb 100644 --- a/user-guide/data-services/rstudio-s3-access.qmd +++ b/user-guide/data-services/rstudio-s3-access.qmd @@ -2,7 +2,7 @@ title: RStudio VEDA S3 Bucket Access subtitle: Setting environment variables to access VEDA S3 buckets in RStudio execute: - eval: false + freeze: true --- ## Overview From 99e2365c376c80d48e18542f52e223d7aa0c9a0e Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Thu, 21 Aug 2025 17:13:01 -0500 Subject: [PATCH 16/28] test2 --- user-guide/notebooks/stories/plotutils.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/user-guide/notebooks/stories/plotutils.py b/user-guide/notebooks/stories/plotutils.py index 77291e7e..49b7c6b9 100644 --- a/user-guide/notebooks/stories/plotutils.py +++ b/user-guide/notebooks/stories/plotutils.py @@ -72,13 +72,10 @@ def plot_folium_from_xarray(dataset, day_select, bbox, var_name_for_title, flipu lat_bottom = float(lats.min() - dy/2) lat_top = float(lats.max() + dy/2) - - #center on the true middle center_lat = (lat_bottom + lat_top) / 2 center_lon = (lon_left + lon_right) / 2 - # Flip latitudes if needed if flipud and lats[0] < lats[-1]: data = np.flipud(data) From 18ae302e8daf41006050777732249b23bbee4c7a Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Thu, 21 Aug 2025 17:15:02 -0500 Subject: [PATCH 17/28] Update rstudio-s3-access.qmd test --- user-guide/data-services/rstudio-s3-access.qmd | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/user-guide/data-services/rstudio-s3-access.qmd b/user-guide/data-services/rstudio-s3-access.qmd index d43a4bbb..c968f88d 100644 --- a/user-guide/data-services/rstudio-s3-access.qmd +++ b/user-guide/data-services/rstudio-s3-access.qmd @@ -1,8 +1,6 @@ --- title: RStudio VEDA S3 Bucket Access subtitle: Setting environment variables to access VEDA S3 buckets in RStudio -execute: - freeze: true --- ## Overview @@ -33,4 +31,4 @@ Open the data vsi_path <- '/vsis3/veda-data-store/landslides-nc-flood/NC_Flood_Extent_2024-09-29.tif' nc_flood <- rast(vsi_path) print(nc_flood) -``` \ No newline at end of file +``` From 390eee664f87f32e544d5bd18a7b73927ba19bad Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Thu, 21 Aug 2025 17:23:27 -0500 Subject: [PATCH 18/28] test3 --- user-guide/data-services/rstudio-s3-access.qmd | 2 ++ 1 file changed, 2 insertions(+) diff --git a/user-guide/data-services/rstudio-s3-access.qmd b/user-guide/data-services/rstudio-s3-access.qmd index 0e09adda..d43a4bbb 100644 --- a/user-guide/data-services/rstudio-s3-access.qmd +++ b/user-guide/data-services/rstudio-s3-access.qmd @@ -1,6 +1,8 @@ --- title: RStudio VEDA S3 Bucket Access subtitle: Setting environment variables to access VEDA S3 buckets in RStudio +execute: + freeze: true --- ## Overview From dad43cc3beac6dd0a4f7932bd63cda2a9a7b0708 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Thu, 21 Aug 2025 17:38:36 -0500 Subject: [PATCH 19/28] test4 --- user-guide/data-services/rstudio-s3-access.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user-guide/data-services/rstudio-s3-access.qmd b/user-guide/data-services/rstudio-s3-access.qmd index d43a4bbb..6626279c 100644 --- a/user-guide/data-services/rstudio-s3-access.qmd +++ b/user-guide/data-services/rstudio-s3-access.qmd @@ -2,7 +2,7 @@ title: RStudio VEDA S3 Bucket Access subtitle: Setting environment variables to access VEDA S3 buckets in RStudio execute: - freeze: true + freeze: false --- ## Overview From ef91101b4a5461110c9bc757ed140bc23a46d68a Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 22 Aug 2025 07:40:20 -0500 Subject: [PATCH 20/28] fix: temp-r-skip --- user-guide/data-services/rstudio-s3-access.qmd | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/user-guide/data-services/rstudio-s3-access.qmd b/user-guide/data-services/rstudio-s3-access.qmd index 6626279c..1ff0dd07 100644 --- a/user-guide/data-services/rstudio-s3-access.qmd +++ b/user-guide/data-services/rstudio-s3-access.qmd @@ -1,8 +1,6 @@ --- title: RStudio VEDA S3 Bucket Access subtitle: Setting environment variables to access VEDA S3 buckets in RStudio -execute: - freeze: false --- ## Overview @@ -14,7 +12,7 @@ Users of the RStudio image in the VEDA Jupyterhub cannot access VEDA AWS buckets ## Set Environment Variables -```{r} +``` Sys.setenv(AWS_ROLE_ARN="arn:aws:iam::444055461661:role/nasa-veda-prod") Sys.setenv(AWS_WEB_IDENTITY_TOKEN_FILE="/var/run/secrets/eks.amazonaws.com/serviceaccount/token") ``` @@ -23,13 +21,13 @@ Sys.setenv(AWS_WEB_IDENTITY_TOKEN_FILE="/var/run/secrets/eks.amazonaws.com/servi Load package(s) -```{r} +``` library(terra) ``` Open the data -```{r} +``` vsi_path <- '/vsis3/veda-data-store/landslides-nc-flood/NC_Flood_Extent_2024-09-29.tif' nc_flood <- rast(vsi_path) print(nc_flood) From 8c4f461e1b7df4a5fbfb493fec6bc4890fa305a0 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 22 Aug 2025 08:03:41 -0500 Subject: [PATCH 21/28] check with new colorbar --- user-guide/notebooks/stories/plotutils.py | 106 ++- .../stories/tornadoes_2024_notebook.ipynb | 870 ++++++++++++------ 2 files changed, 706 insertions(+), 270 deletions(-) diff --git a/user-guide/notebooks/stories/plotutils.py b/user-guide/notebooks/stories/plotutils.py index 49b7c6b9..7c6a962f 100644 --- a/user-guide/notebooks/stories/plotutils.py +++ b/user-guide/notebooks/stories/plotutils.py @@ -776,19 +776,101 @@ def plot_folium_from_VEDA_STAC( pass # Don't add LinearColormap for categorical data elif not remove_default_legend: - # For continuous data, add LinearColormap + # For continuous data, add HTML gradient colorbar centered under title steps = 10 - mpl_cmap = plt.get_cmap(cmap_name) - colors = [mpl_cmap(i / (steps - 1)) for i in range(steps)] - - legend = LinearColormap( - colors=colors, - vmin=vmin_val, - vmax=vmax_val, - caption=colorbar_caption - ).to_step(steps) - - legend.add_to(m) + try: + mpl_cmap = plt.get_cmap(cmap_name) + + # Generate gradient CSS for continuous colormap + gradient_stops = [] + for i in range(100): # More stops for smoother gradient + ratio = i / 99 + rgba = mpl_cmap(ratio) + color = f"rgba({int(rgba[0]*255)}, {int(rgba[1]*255)}, {int(rgba[2]*255)}, 1)" + gradient_stops.append(f"{color} {ratio*100}%") + + gradient_css = f"linear-gradient(to right, {', '.join(gradient_stops)})" + + # Calculate tick values (like LinearColormap does) + tick_values = [] + for i in range(steps + 1): + val = vmin_val + (vmax_val - vmin_val) * i / steps + # Format based on magnitude + if abs(val) >= 1000: + tick_values.append(f"{val:.2e}") + elif abs(val) >= 5: + # Large numbers (>=5): round to whole numbers + tick_values.append(str(int(round(val)))) + elif val == 0: + tick_values.append("0") + else: + # Small numbers (<5): use 2 decimal places + tick_values.append(f"{val:.2f}") + + # Create tick marks HTML + tick_marks_html = "" + tick_labels_html = "" + for i, tick_val in enumerate(tick_values): + position = (i / (len(tick_values) - 1)) * 100 + # Tick mark + tick_marks_html += f''' +
    + ''' + # Tick label + tick_labels_html += f''' +
    {tick_val}
    + ''' + + # Create centered colorbar HTML matching LinearColormap style + colorbar_html = f""" +
    +
    +
    + {tick_marks_html} +
    +
    + {tick_labels_html} +
    +
    +
    + {colorbar_caption} +
    +
    + """ + m.get_root().html.add_child(Element(colorbar_html)) + except Exception as e: + print(f"Warning: Could not create gradient colorbar: {e}") # else: remove_default_legend=True and no custom_colors = no legend at all # Add custom HTML legend if provided diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 46f65e2f..4dbe89a0 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -1159,7 +1159,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_d2eedeb0e6eabe2b5fb5975670416653 {\n", + " #map_ec3c8a2c1a6bd9007a9d6082405e7331 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -1212,7 +1212,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_d2eedeb0e6eabe2b5fb5975670416653" ></div>\n", + " <div class="folium-map" id="map_ec3c8a2c1a6bd9007a9d6082405e7331" ></div>\n", " \n", " \n", " <div style="\n", @@ -1313,8 +1313,8 @@ "<script>\n", " \n", " \n", - " var map_d2eedeb0e6eabe2b5fb5975670416653 = L.map(\n", - " "map_d2eedeb0e6eabe2b5fb5975670416653",\n", + " var map_ec3c8a2c1a6bd9007a9d6082405e7331 = L.map(\n", + " "map_ec3c8a2c1a6bd9007a9d6082405e7331",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", @@ -1326,13 +1326,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", + " L.control.scale().addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_57128305c4e55a5696bd7bc641477109 = L.tileLayer(\n", + " var tile_layer_1e8ad56bc8854a2dba923fd45d983ab1 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1349,10 +1349,10 @@ " );\n", " \n", " \n", - " tile_layer_57128305c4e55a5696bd7bc641477109.addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", + " tile_layer_1e8ad56bc8854a2dba923fd45d983ab1.addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", " \n", " \n", - " var tile_layer_68333a7a81afa12661eed5196981aeb7 = L.tileLayer(\n", + " var tile_layer_5e3ccfb0aba7ac6969b6c1256faa2373 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1369,10 +1369,10 @@ " );\n", " \n", " \n", - " tile_layer_68333a7a81afa12661eed5196981aeb7.addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", + " tile_layer_5e3ccfb0aba7ac6969b6c1256faa2373.addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", " \n", " \n", - " var tile_layer_c73656810d494a0eeda2a50d4b12442f = L.tileLayer(\n", + " var tile_layer_91e496888541ede27d88b1847701e1db = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -1389,34 +1389,34 @@ " );\n", " \n", " \n", - " tile_layer_c73656810d494a0eeda2a50d4b12442f.addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", + " tile_layer_91e496888541ede27d88b1847701e1db.addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", " \n", " \n", - " var layer_control_653e321d95a7040572f0f56031a1dce7_layers = {\n", + " var layer_control_b9776efed05f5fe0721ac04faa948706_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_57128305c4e55a5696bd7bc641477109,\n", + " "ESRI Satellite" : tile_layer_1e8ad56bc8854a2dba923fd45d983ab1,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_68333a7a81afa12661eed5196981aeb7,\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_c73656810d494a0eeda2a50d4b12442f,\n", + " "Place Labels" : tile_layer_5e3ccfb0aba7ac6969b6c1256faa2373,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_91e496888541ede27d88b1847701e1db,\n", " },\n", " };\n", - " let layer_control_653e321d95a7040572f0f56031a1dce7 = L.control.layers(\n", - " layer_control_653e321d95a7040572f0f56031a1dce7_layers.base_layers,\n", - " layer_control_653e321d95a7040572f0f56031a1dce7_layers.overlays,\n", + " let layer_control_b9776efed05f5fe0721ac04faa948706 = L.control.layers(\n", + " layer_control_b9776efed05f5fe0721ac04faa948706_layers.base_layers,\n", + " layer_control_b9776efed05f5fe0721ac04faa948706_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_d2eedeb0e6eabe2b5fb5975670416653);\n", + " ).addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 7, @@ -2468,7 +2468,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_89d64365332fea3f856fef0bb3e43122 {\n", + " #map_3b5677be4025dba28e90587a8cea32b0 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -2521,7 +2521,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_89d64365332fea3f856fef0bb3e43122" ></div>\n", + " <div class="folium-map" id="map_3b5677be4025dba28e90587a8cea32b0" ></div>\n", " \n", " \n", " <div style="\n", @@ -2622,8 +2622,8 @@ "<script>\n", " \n", " \n", - " var map_89d64365332fea3f856fef0bb3e43122 = L.map(\n", - " "map_89d64365332fea3f856fef0bb3e43122",\n", + " var map_3b5677be4025dba28e90587a8cea32b0 = L.map(\n", + " "map_3b5677be4025dba28e90587a8cea32b0",\n", " {\n", " center: [40.3, -84.05],\n", " crs: L.CRS.EPSG3857,\n", @@ -2635,13 +2635,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_89d64365332fea3f856fef0bb3e43122);\n", + " L.control.scale().addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_a7ad6772576477e7c5c7f5be1f7b55de = L.tileLayer(\n", + " var tile_layer_3e81f1b1b1cc62673e1837f92cbcda5c = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2658,10 +2658,10 @@ " );\n", " \n", " \n", - " tile_layer_a7ad6772576477e7c5c7f5be1f7b55de.addTo(map_89d64365332fea3f856fef0bb3e43122);\n", + " tile_layer_3e81f1b1b1cc62673e1837f92cbcda5c.addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", " \n", " \n", - " var tile_layer_9d241f38e12f22be1b3f5e897bf8823e = L.tileLayer(\n", + " var tile_layer_eb2ec860d0eec79be68d28a79ca2b311 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2678,10 +2678,10 @@ " );\n", " \n", " \n", - " tile_layer_9d241f38e12f22be1b3f5e897bf8823e.addTo(map_89d64365332fea3f856fef0bb3e43122);\n", + " tile_layer_eb2ec860d0eec79be68d28a79ca2b311.addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", " \n", " \n", - " var tile_layer_ff05cf58682890ed517cf11fae106068 = L.tileLayer(\n", + " var tile_layer_c8b4c6d5ee02d8cf4947939278ae9b04 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -2698,34 +2698,34 @@ " );\n", " \n", " \n", - " tile_layer_ff05cf58682890ed517cf11fae106068.addTo(map_89d64365332fea3f856fef0bb3e43122);\n", + " tile_layer_c8b4c6d5ee02d8cf4947939278ae9b04.addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", " \n", " \n", - " var layer_control_8d64332b34fcf4f748930417264f1dd6_layers = {\n", + " var layer_control_8ee5886b7b78cffdae64244db4fea620_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_a7ad6772576477e7c5c7f5be1f7b55de,\n", + " "ESRI Satellite" : tile_layer_3e81f1b1b1cc62673e1837f92cbcda5c,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_9d241f38e12f22be1b3f5e897bf8823e,\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_ff05cf58682890ed517cf11fae106068,\n", + " "Place Labels" : tile_layer_eb2ec860d0eec79be68d28a79ca2b311,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_c8b4c6d5ee02d8cf4947939278ae9b04,\n", " },\n", " };\n", - " let layer_control_8d64332b34fcf4f748930417264f1dd6 = L.control.layers(\n", - " layer_control_8d64332b34fcf4f748930417264f1dd6_layers.base_layers,\n", - " layer_control_8d64332b34fcf4f748930417264f1dd6_layers.overlays,\n", + " let layer_control_8ee5886b7b78cffdae64244db4fea620 = L.control.layers(\n", + " layer_control_8ee5886b7b78cffdae64244db4fea620_layers.base_layers,\n", + " layer_control_8ee5886b7b78cffdae64244db4fea620_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_89d64365332fea3f856fef0bb3e43122);\n", + " ).addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 10, @@ -3805,7 +3805,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_45266030bcdeed1380fc0c1c6a071fb6 {\n", + " #map_40c23b4acbc21901192a56dc595659f0 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -3838,11 +3838,240 @@ " </script>\n", "\n", " \n", - " <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js"></script>\n", "</head>\n", "<body>\n", " \n", " \n", + " <div style="\n", + " position: fixed;\n", + " top: 50px;\n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " background: white;\n", + " padding: 15px 20px 40px 20px;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " ">\n", + " <div style="\n", + " position: relative;\n", + " width: 300px;\n", + " height: 15px;\n", + " background: linear-gradient(to right, rgba(0, 0, 255, 1) 0.0%, rgba(4, 4, 255, 1) 1.0101010101010102%, rgba(10, 10, 255, 1) 2.0202020202020203%, rgba(14, 14, 255, 1) 3.0303030303030303%, rgba(20, 20, 255, 1) 4.040404040404041%, rgba(24, 24, 255, 1) 5.05050505050505%, rgba(30, 30, 255, 1) 6.0606060606060606%, rgba(36, 36, 255, 1) 7.07070707070707%, rgba(40, 40, 255, 1) 8.080808080808081%, rgba(46, 46, 255, 1) 9.090909090909092%, rgba(50, 50, 255, 1) 10.1010101010101%, rgba(56, 56, 255, 1) 11.11111111111111%, rgba(62, 62, 255, 1) 12.121212121212121%, rgba(65, 65, 255, 1) 13.131313131313133%, rgba(72, 72, 255, 1) 14.14141414141414%, rgba(76, 76, 255, 1) 15.151515151515152%, rgba(81, 81, 255, 1) 16.161616161616163%, rgba(86, 86, 255, 1) 17.17171717171717%, rgba(92, 92, 255, 1) 18.181818181818183%, rgba(97, 97, 255, 1) 19.19191919191919%, rgba(102, 102, 255, 1) 20.2020202020202%, rgba(108, 108, 255, 1) 21.21212121212121%, rgba(112, 112, 255, 1) 22.22222222222222%, rgba(118, 118, 255, 1) 23.232323232323232%, rgba(124, 124, 255, 1) 24.242424242424242%, rgba(128, 128, 255, 1) 25.252525252525253%, rgba(134, 134, 255, 1) 26.262626262626267%, rgba(138, 138, 255, 1) 27.27272727272727%, rgba(144, 144, 255, 1) 28.28282828282828%, rgba(147, 147, 255, 1) 29.292929292929294%, rgba(154, 154, 255, 1) 30.303030303030305%, rgba(160, 160, 255, 1) 31.313131313131315%, rgba(163, 163, 255, 1) 32.323232323232325%, rgba(170, 170, 255, 1) 33.33333333333333%, rgba(174, 174, 255, 1) 34.34343434343434%, rgba(179, 179, 255, 1) 35.35353535353536%, rgba(186, 186, 255, 1) 36.36363636363637%, rgba(190, 190, 255, 1) 37.37373737373738%, rgba(195, 195, 255, 1) 38.38383838383838%, rgba(200, 200, 255, 1) 39.39393939393939%, rgba(206, 206, 255, 1) 40.4040404040404%, rgba(211, 211, 255, 1) 41.41414141414141%, rgba(216, 216, 255, 1) 42.42424242424242%, rgba(222, 222, 255, 1) 43.43434343434344%, rgba(226, 226, 255, 1) 44.44444444444444%, rgba(232, 232, 255, 1) 45.45454545454545%, rgba(236, 236, 255, 1) 46.464646464646464%, rgba(242, 242, 255, 1) 47.474747474747474%, rgba(248, 248, 255, 1) 48.484848484848484%, rgba(252, 252, 255, 1) 49.494949494949495%, rgba(255, 252, 252, 1) 50.505050505050505%, rgba(255, 248, 248, 1) 51.515151515151516%, rgba(255, 242, 242, 1) 52.52525252525253%, rgba(255, 236, 236, 1) 53.535353535353536%, rgba(255, 232, 232, 1) 54.54545454545454%, rgba(255, 226, 226, 1) 55.55555555555556%, rgba(255, 222, 222, 1) 56.56565656565656%, rgba(255, 216, 216, 1) 57.57575757575758%, rgba(255, 211, 211, 1) 58.58585858585859%, rgba(255, 206, 206, 1) 59.59595959595959%, rgba(255, 200, 200, 1) 60.60606060606061%, rgba(255, 195, 195, 1) 61.61616161616161%, rgba(255, 190, 190, 1) 62.62626262626263%, rgba(255, 186, 186, 1) 63.63636363636363%, rgba(255, 179, 179, 1) 64.64646464646465%, rgba(255, 174, 174, 1) 65.65656565656566%, rgba(255, 170, 170, 1) 66.66666666666666%, rgba(255, 163, 163, 1) 67.67676767676768%, rgba(255, 160, 160, 1) 68.68686868686868%, rgba(255, 154, 154, 1) 69.6969696969697%, rgba(255, 147, 147, 1) 70.70707070707071%, rgba(255, 144, 144, 1) 71.71717171717171%, rgba(255, 138, 138, 1) 72.72727272727273%, rgba(255, 134, 134, 1) 73.73737373737373%, rgba(255, 128, 128, 1) 74.74747474747475%, rgba(255, 124, 124, 1) 75.75757575757575%, rgba(255, 118, 118, 1) 76.76767676767676%, rgba(255, 112, 112, 1) 77.77777777777779%, rgba(255, 108, 108, 1) 78.78787878787878%, rgba(255, 102, 102, 1) 79.7979797979798%, rgba(255, 97, 97, 1) 80.8080808080808%, rgba(255, 92, 92, 1) 81.81818181818183%, rgba(255, 86, 86, 1) 82.82828282828282%, rgba(255, 81, 81, 1) 83.83838383838383%, rgba(255, 76, 76, 1) 84.84848484848484%, rgba(255, 72, 72, 1) 85.85858585858585%, rgba(255, 65, 65, 1) 86.86868686868688%, rgba(255, 62, 62, 1) 87.87878787878788%, rgba(255, 56, 56, 1) 88.88888888888889%, rgba(255, 49, 49, 1) 89.8989898989899%, rgba(255, 46, 46, 1) 90.9090909090909%, rgba(255, 40, 40, 1) 91.91919191919192%, rgba(255, 36, 36, 1) 92.92929292929293%, rgba(255, 30, 30, 1) 93.93939393939394%, rgba(255, 24, 24, 1) 94.94949494949495%, rgba(255, 20, 20, 1) 95.95959595959596%, rgba(255, 14, 14, 1) 96.96969696969697%, rgba(255, 9, 9, 1) 97.97979797979798%, rgba(255, 4, 4, 1) 98.98989898989899%, rgba(255, 0, 0, 1) 100.0%);\n", + " border: 1px solid black;\n", + " margin: 0 auto;\n", + " ">\n", + " <div style="position: relative; width: 100%; height: 100%;">\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 0.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 10.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 20.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 30.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 40.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 50.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 60.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 70.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 80.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 90.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 100.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " </div>\n", + " <div style="position: relative; width: 100%; height: 30px;">\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 0.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">-150</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 10.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">-120</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 20.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">-90</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 30.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">-60</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 40.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">-30</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 50.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">0</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 60.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">30</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 70.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">60</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 80.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">90</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 90.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">120</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 100.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">150</div>\n", + " \n", + " </div>\n", + " </div>\n", + " <div style="text-align: center; margin-top: 25px; font-size: 12px;">\n", + " Artificial Light\n", + " </div>\n", + " </div>\n", + " \n", + " \n", " <div style="\n", " position: fixed;\n", " top: 10px;\n", @@ -3859,14 +4088,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_45266030bcdeed1380fc0c1c6a071fb6" ></div>\n", + " <div class="folium-map" id="map_40c23b4acbc21901192a56dc595659f0" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_45266030bcdeed1380fc0c1c6a071fb6 = L.map(\n", - " "map_45266030bcdeed1380fc0c1c6a071fb6",\n", + " var map_40c23b4acbc21901192a56dc595659f0 = L.map(\n", + " "map_40c23b4acbc21901192a56dc595659f0",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -3878,13 +4107,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", + " L.control.scale().addTo(map_40c23b4acbc21901192a56dc595659f0);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_0df206e67b47fa1a4af50985e5a3362f = L.tileLayer(\n", + " var tile_layer_cb1c82b40f6cea88771c29a8e0f85290 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -3901,10 +4130,10 @@ " );\n", " \n", " \n", - " tile_layer_0df206e67b47fa1a4af50985e5a3362f.addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", + " tile_layer_cb1c82b40f6cea88771c29a8e0f85290.addTo(map_40c23b4acbc21901192a56dc595659f0);\n", " \n", " \n", - " var tile_layer_381863af38d4d484911271df7ca65ddd = L.tileLayer(\n", + " var tile_layer_06a9159d1b8dd3bfb9ae89d2a12fd6a8 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", @@ -3921,85 +4150,33 @@ " );\n", " \n", " \n", - " tile_layer_381863af38d4d484911271df7ca65ddd.addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", + " tile_layer_06a9159d1b8dd3bfb9ae89d2a12fd6a8.addTo(map_40c23b4acbc21901192a56dc595659f0);\n", " \n", " \n", - " var layer_control_c8a4277d06bcaa9e6439779f8f647fb9_layers = {\n", + " var layer_control_cba310213a3de7c6d0a84978e1469251_layers = {\n", " base_layers : {\n", - " "CartoDB Dark" : tile_layer_0df206e67b47fa1a4af50985e5a3362f,\n", + " "CartoDB Dark" : tile_layer_cb1c82b40f6cea88771c29a8e0f85290,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_381863af38d4d484911271df7ca65ddd,\n", + " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_06a9159d1b8dd3bfb9ae89d2a12fd6a8,\n", " },\n", " };\n", - " let layer_control_c8a4277d06bcaa9e6439779f8f647fb9 = L.control.layers(\n", - " layer_control_c8a4277d06bcaa9e6439779f8f647fb9_layers.base_layers,\n", - " layer_control_c8a4277d06bcaa9e6439779f8f647fb9_layers.overlays,\n", + " let layer_control_cba310213a3de7c6d0a84978e1469251 = L.control.layers(\n", + " layer_control_cba310213a3de7c6d0a84978e1469251_layers.base_layers,\n", + " layer_control_cba310213a3de7c6d0a84978e1469251_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", + " ).addTo(map_40c23b4acbc21901192a56dc595659f0);\n", "\n", " \n", - " \n", - " var color_map_c6f2ab527f0a2bbefdb5dce185bf197c = {};\n", - "\n", - " \n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color = d3.scale.threshold()\n", - " .domain([-150.0, -149.3987975951904, -148.79759519038078, -148.19639278557113, -147.59519038076152, -146.9939879759519, -146.3927855711423, -145.79158316633266, -145.19038076152304, -144.58917835671343, -143.98797595190382, -143.38677354709418, -142.78557114228457, -142.18436873747495, -141.58316633266534, -140.9819639278557, -140.3807615230461, -139.77955911823648, -139.17835671342687, -138.57715430861722, -137.9759519038076, -137.374749498998, -136.7735470941884, -136.17234468937875, -135.57114228456913, -134.96993987975952, -134.3687374749499, -133.76753507014027, -133.16633266533066, -132.56513026052104, -131.96392785571143, -131.3627254509018, -130.76152304609218, -130.16032064128257, -129.55911823647295, -128.95791583166334, -128.3567134268537, -127.75551102204409, -127.15430861723448, -126.55310621242485, -125.95190380761522, -125.35070140280561, -124.749498997996, -124.14829659318637, -123.54709418837675, -122.94589178356713, -122.34468937875752, -121.7434869739479, -121.14228456913827, -120.54108216432866, -119.93987975951904, -119.33867735470942, -118.73747494989979, -118.13627254509018, -117.53507014028057, -116.93386773547094, -116.33266533066131, -115.7314629258517, -115.13026052104209, -114.52905811623246, -113.92785571142284, -113.32665330661322, -112.72545090180361, -112.12424849699399, -111.52304609218436, -110.92184368737475, -110.32064128256513, -109.71943887775551, -109.11823647294588, -108.51703406813627, -107.91583166332666, -107.31462925851704, -106.71342685370742, -106.11222444889779, -105.51102204408818, -104.90981963927857, -104.30861723446894, -103.70741482965931, -103.1062124248497, -102.50501002004009, -101.90380761523046, -101.30260521042084, -100.70140280561122, -100.10020040080161, -99.49899799599199, -98.89779559118236, -98.29659318637275, -97.69539078156313, -97.09418837675351, -96.49298597194388, -95.89178356713427, -95.29058116232466, -94.68937875751503, -94.0881763527054, -93.48697394789579, -92.88577154308618, -92.28456913827655, -91.68336673346693, -91.08216432865731, -90.4809619238477, -89.87975951903807, -89.27855711422845, -88.67735470941884, -88.07615230460922, -87.4749498997996, -86.87374749498997, -86.27254509018036, -85.67134268537075, -85.07014028056112, -84.46893787575151, -83.86773547094188, -83.26653306613227, -82.66533066132264, -82.06412825651303, -81.4629258517034, -80.86172344689379, -80.26052104208416, -79.65931863727455, -79.05811623246493, -78.45691382765531, -77.85571142284569, -77.25450901803607, -76.65330661322645, -76.05210420841684, -75.45090180360721, -74.8496993987976, -74.24849699398797, -73.64729458917836, -73.04609218436873, -72.44488977955912, -71.84368737474949, -71.24248496993988, -70.64128256513025, -70.04008016032064, -69.43887775551102, -68.8376753507014, -68.23647294589178, -67.63527054108216, -67.03406813627255, -66.43286573146293, -65.83166332665331, -65.23046092184369, -64.62925851703407, -64.02805611222445, -63.426853707414836, -62.82565130260521, -62.2244488977956, -61.62324649298597, -61.02204408817636, -60.42084168336673, -59.81963927855712, -59.21843687374749, -58.61723446893788, -58.016032064128254, -57.41482965931864, -56.813627254509015, -56.2124248496994, -55.611222444889776, -55.010020040080164, -54.40881763527054, -53.807615230460925, -53.2064128256513, -52.605210420841686, -52.00400801603206, -51.40280561122245, -50.80160320641282, -50.20040080160321, -49.59919839679358, -48.99799599198397, -48.39679358717434, -47.79559118236473, -47.194388777555105, -46.59318637274549, -45.991983967935866, -45.390781563126254, -44.78957915831663, -44.188376753507015, -43.58717434869739, -42.985971943887776, -42.38476953907815, -41.78356713426854, -41.18236472945891, -40.5811623246493, -39.979959919839686, -39.37875751503006, -38.77755511022045, -38.17635270541082, -37.57515030060121, -36.97394789579158, -36.37274549098197, -35.77154308617234, -35.17034068136273, -34.569138276553105, -33.96793587174349, -33.366733466933866, -32.76553106212425, -32.16432865731463, -31.563126252505015, -30.961923847695388, -30.360721442885776, -29.75951903807615, -29.158316633266537, -28.55711422845691, -27.9559118236473, -27.354709418837672, -26.75350701402806, -26.152304609218433, -25.55110220440882, -24.949899799599194, -24.348697394789582, -23.747494989979955, -23.146292585170343, -22.545090180360717, -21.943887775551104, -21.342685370741492, -20.74148296593185, -20.14028056112224, -19.539078156312627, -18.937875751503014, -18.336673346693374, -17.73547094188376, -17.13426853707415, -16.533066132264537, -15.931863727454896, -15.330661322645284, -14.729458917835672, -14.12825651302606, -13.527054108216447, -12.925851703406806, -12.324649298597194, -11.723446893787582, -11.12224448897797, -10.521042084168329, -9.919839679358716, -9.318637274549104, -8.717434869739492, -8.116232464929851, -7.515030060120239, -6.913827655310627, -6.312625250501014, -5.711422845691374, -5.110220440881761, -4.509018036072149, -3.9078156312625367, -3.306613226452896, -2.7054108216432837, -2.1042084168336714, -1.5030060120240591, -0.9018036072144184, -0.30060120240480614, 0.30060120240480614, 0.9018036072144184, 1.5030060120240591, 2.1042084168336714, 2.7054108216432837, 3.306613226452896, 3.9078156312625367, 4.509018036072149, 5.110220440881761, 5.711422845691374, 6.312625250501014, 6.913827655310627, 7.515030060120239, 8.116232464929851, 8.717434869739492, 9.318637274549104, 9.919839679358716, 10.521042084168329, 11.12224448897797, 11.723446893787582, 12.324649298597194, 12.925851703406806, 13.527054108216447, 14.12825651302606, 14.729458917835672, 15.330661322645284, 15.931863727454896, 16.533066132264537, 17.13426853707415, 17.73547094188376, 18.336673346693374, 18.937875751503014, 19.539078156312627, 20.14028056112224, 20.74148296593185, 21.342685370741492, 21.943887775551104, 22.545090180360717, 23.14629258517033, 23.74749498997997, 24.348697394789582, 24.949899799599194, 25.551102204408807, 26.152304609218447, 26.75350701402806, 27.354709418837672, 27.955911823647284, 28.557114228456925, 29.158316633266537, 29.75951903807615, 30.36072144288576, 30.961923847695402, 31.563126252505015, 32.16432865731463, 32.76553106212424, 33.36673346693388, 33.96793587174349, 34.569138276553105, 35.17034068136272, 35.77154308617236, 36.37274549098197, 36.97394789579158, 37.575150300601194, 38.176352705410835, 38.77755511022045, 39.37875751503006, 39.97995991983967, 40.58116232464931, 41.182364729458925, 41.78356713426854, 42.38476953907815, 42.98597194388776, 43.5871743486974, 44.188376753507015, 44.78957915831663, 45.39078156312624, 45.99198396793588, 46.59318637274549, 47.194388777555105, 47.79559118236472, 48.39679358717436, 48.99799599198397, 49.59919839679358, 50.200400801603195, 50.801603206412835, 51.40280561122245, 52.00400801603206, 52.60521042084167, 53.20641282565131, 53.807615230460925, 54.40881763527054, 55.01002004008015, 55.61122244488979, 56.2124248496994, 56.813627254509015, 57.41482965931863, 58.01603206412827, 58.61723446893788, 59.21843687374749, 59.819639278557105, 60.420841683366746, 61.02204408817636, 61.62324649298597, 62.22444889779558, 62.82565130260522, 63.426853707414836, 64.02805611222445, 64.62925851703406, 65.2304609218437, 65.83166332665331, 66.43286573146293, 67.03406813627254, 67.63527054108218, 68.23647294589179, 68.8376753507014, 69.43887775551102, 70.04008016032063, 70.64128256513027, 71.24248496993988, 71.84368737474949, 72.4448897795591, 73.04609218436875, 73.64729458917836, 74.24849699398797, 74.84969939879758, 75.45090180360722, 76.05210420841684, 76.65330661322645, 77.25450901803606, 77.8557114228457, 78.45691382765531, 79.05811623246493, 79.65931863727454, 80.26052104208418, 80.86172344689379, 81.4629258517034, 82.06412825651302, 82.66533066132266, 83.26653306613227, 83.86773547094188, 84.4689378757515, 85.07014028056113, 85.67134268537075, 86.27254509018036, 86.87374749498997, 87.47494989979961, 88.07615230460922, 88.67735470941884, 89.27855711422845, 89.87975951903809, 90.4809619238477, 91.08216432865731, 91.68336673346693, 92.28456913827657, 92.88577154308618, 93.48697394789579, 94.0881763527054, 94.68937875751504, 95.29058116232466, 95.89178356713427, 96.49298597194388, 97.0941883767535, 97.69539078156313, 98.29659318637275, 98.89779559118236, 99.49899799599197, 100.10020040080161, 100.70140280561122, 101.30260521042084, 101.90380761523045, 102.50501002004009, 103.1062124248497, 103.70741482965931, 104.30861723446893, 104.90981963927857, 105.51102204408818, 106.11222444889779, 106.7134268537074, 107.31462925851702, 107.91583166332663, 108.5170340681363, 109.11823647294591, 109.71943887775552, 110.32064128256513, 110.92184368737475, 111.52304609218436, 112.12424849699397, 112.72545090180358, 113.32665330661325, 113.92785571142286, 114.52905811623248, 115.13026052104209, 115.7314629258517, 116.33266533066131, 116.93386773547093, 117.53507014028054, 118.13627254509021, 118.73747494989982, 119.33867735470943, 119.93987975951904, 120.54108216432866, 121.14228456913827, 121.74348697394788, 122.3446893787575, 122.9458917835671, 123.54709418837678, 124.14829659318639, 124.749498997996, 125.35070140280561, 125.95190380761522, 126.55310621242484, 127.15430861723445, 127.75551102204406, 128.35671342685373, 128.95791583166334, 129.55911823647295, 130.16032064128257, 130.76152304609218, 131.3627254509018, 131.9639278557114, 132.56513026052102, 133.16633266533069, 133.7675350701403, 134.3687374749499, 134.96993987975952, 135.57114228456913, 136.17234468937875, 136.77354709418836, 137.37474949899797, 137.97595190380764, 138.57715430861725, 139.17835671342687, 139.77955911823648, 140.3807615230461, 140.9819639278557, 141.58316633266531, 142.18436873747493, 142.7855711422846, 143.3867735470942, 143.98797595190382, 144.58917835671343, 145.19038076152304, 145.79158316633266, 146.39278557114227, 146.99398797595188, 147.59519038076155, 148.19639278557116, 148.79759519038078, 149.3987975951904, 150.0])\n", - " .range(['#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#0000ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#3838ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#7070ffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#aaaaffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#e2e2ffff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffe2e2ff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ffaaaaff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff7070ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff3838ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff', '#ff0000ff']);\n", - " \n", - "\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x = d3.scale.linear()\n", - " .domain([-150.0, 150.0])\n", - " .range([0, 450 - 50]);\n", - "\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.legend = L.control({position: 'topright'});\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.legend.addTo(map_45266030bcdeed1380fc0c1c6a071fb6);\n", - "\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.xAxis = d3.svg.axis()\n", - " .scale(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x)\n", - " .orient("top")\n", - " .tickSize(1)\n", - " .tickValues([-150.0, '', -90.0, '', -30.0, '', 30.0, '', 90.0, '', 150.0, '']);\n", - "\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.svg = d3.select(".legend.leaflet-control").append("svg")\n", - " .attr("id", 'legend')\n", - " .attr("width", 450)\n", - " .attr("height", 40);\n", - "\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.g = color_map_c6f2ab527f0a2bbefdb5dce185bf197c.svg.append("g")\n", - " .attr("class", "key")\n", - " .attr("fill", "black")\n", - " .attr("transform", "translate(25,16)");\n", - "\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.g.selectAll("rect")\n", - " .data(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color.range().map(function(d, i) {\n", - " return {\n", - " x0: i ? color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color.domain()[i - 1]) : color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x.range()[0],\n", - " x1: i < color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color.domain().length ? color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.color.domain()[i]) : color_map_c6f2ab527f0a2bbefdb5dce185bf197c.x.range()[1],\n", - " z: d\n", - " };\n", - " }))\n", - " .enter().append("rect")\n", - " .attr("height", 40 - 30)\n", - " .attr("x", function(d) { return d.x0; })\n", - " .attr("width", function(d) { return d.x1 - d.x0; })\n", - " .style("fill", function(d) { return d.z; });\n", - "\n", - " color_map_c6f2ab527f0a2bbefdb5dce185bf197c.g.call(color_map_c6f2ab527f0a2bbefdb5dce185bf197c.xAxis).append("text")\n", - " .attr("class", "caption")\n", - " .attr("y", 21)\n", - " .attr("fill", "black")\n", - " .text("Artificial Light");\n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 13, @@ -6017,7 +6194,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_880b2c91c441839765db2b4e4c53c6e9 {\n", + " #map_8fd7e0fe896e9aa95357071c9b0486f3 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6152,14 +6329,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_880b2c91c441839765db2b4e4c53c6e9" ></div>\n", + " <div class="folium-map" id="map_8fd7e0fe896e9aa95357071c9b0486f3" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_880b2c91c441839765db2b4e4c53c6e9 = L.map(\n", - " "map_880b2c91c441839765db2b4e4c53c6e9",\n", + " var map_8fd7e0fe896e9aa95357071c9b0486f3 = L.map(\n", + " "map_8fd7e0fe896e9aa95357071c9b0486f3",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6171,13 +6348,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", + " L.control.scale().addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_fa0368521ff004853c8f9f8ee09d2657 = L.tileLayer(\n", + " var tile_layer_a8d1379b9d805c505d747fc4742af6dd = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6194,10 +6371,10 @@ " );\n", " \n", " \n", - " tile_layer_fa0368521ff004853c8f9f8ee09d2657.addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", + " tile_layer_a8d1379b9d805c505d747fc4742af6dd.addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", " \n", " \n", - " var tile_layer_6bc9fadb842fe0c29878e02eada16756 = L.tileLayer(\n", + " var tile_layer_0b75e70878a89184f1f07d74d43e158f = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6214,10 +6391,10 @@ " );\n", " \n", " \n", - " tile_layer_6bc9fadb842fe0c29878e02eada16756.addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", + " tile_layer_0b75e70878a89184f1f07d74d43e158f.addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", " \n", " \n", - " var tile_layer_812c40a0f89fe47f06a15bef9ab48182 = L.tileLayer(\n", + " var tile_layer_447a7c0eeff62502eedd8b54d1abdbf0 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", " {\n", " "minZoom": 0,\n", @@ -6234,10 +6411,10 @@ " );\n", " \n", " \n", - " tile_layer_812c40a0f89fe47f06a15bef9ab48182.addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", + " tile_layer_447a7c0eeff62502eedd8b54d1abdbf0.addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", " \n", " \n", - " var tile_layer_edbbfd8c45a6536d7c6602a663aca838 = L.tileLayer(\n", + " var tile_layer_ff4994d961534bf529fac3e3d2206a89 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6254,40 +6431,40 @@ " );\n", " \n", " \n", - " tile_layer_edbbfd8c45a6536d7c6602a663aca838.addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", + " tile_layer_ff4994d961534bf529fac3e3d2206a89.addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", " \n", " \n", - " var side_by_side_layers_cb10c3e8635be8a520389ab2c72b38a4 = L.control.sideBySide(\n", - " tile_layer_812c40a0f89fe47f06a15bef9ab48182, tile_layer_edbbfd8c45a6536d7c6602a663aca838\n", - " ).addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", + " var side_by_side_layers_e6434dd1e22298f5c940c83db122b0d9 = L.control.sideBySide(\n", + " tile_layer_447a7c0eeff62502eedd8b54d1abdbf0, tile_layer_ff4994d961534bf529fac3e3d2206a89\n", + " ).addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", " \n", " \n", - " var layer_control_4a5ed96c7b63a784f7c695971545d886_layers = {\n", + " var layer_control_e87968728ab7eeeb8c0f9af72c5c22f7_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_fa0368521ff004853c8f9f8ee09d2657,\n", + " "ESRI Satellite" : tile_layer_a8d1379b9d805c505d747fc4742af6dd,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_6bc9fadb842fe0c29878e02eada16756,\n", - " "DOW7 Reflectivity" : tile_layer_812c40a0f89fe47f06a15bef9ab48182,\n", - " "DOW7 Velocity" : tile_layer_edbbfd8c45a6536d7c6602a663aca838,\n", + " "Place Labels" : tile_layer_0b75e70878a89184f1f07d74d43e158f,\n", + " "DOW7 Reflectivity" : tile_layer_447a7c0eeff62502eedd8b54d1abdbf0,\n", + " "DOW7 Velocity" : tile_layer_ff4994d961534bf529fac3e3d2206a89,\n", " },\n", " };\n", - " let layer_control_4a5ed96c7b63a784f7c695971545d886 = L.control.layers(\n", - " layer_control_4a5ed96c7b63a784f7c695971545d886_layers.base_layers,\n", - " layer_control_4a5ed96c7b63a784f7c695971545d886_layers.overlays,\n", + " let layer_control_e87968728ab7eeeb8c0f9af72c5c22f7 = L.control.layers(\n", + " layer_control_e87968728ab7eeeb8c0f9af72c5c22f7_layers.base_layers,\n", + " layer_control_e87968728ab7eeeb8c0f9af72c5c22f7_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_880b2c91c441839765db2b4e4c53c6e9);\n", + " ).addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 17, @@ -6440,7 +6617,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_39c36108913b555af0569e2f3ea39caa {\n", + " #map_548e2f939b5f09233d27b4839a255f48 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6575,14 +6752,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_39c36108913b555af0569e2f3ea39caa" ></div>\n", + " <div class="folium-map" id="map_548e2f939b5f09233d27b4839a255f48" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_39c36108913b555af0569e2f3ea39caa = L.map(\n", - " "map_39c36108913b555af0569e2f3ea39caa",\n", + " var map_548e2f939b5f09233d27b4839a255f48 = L.map(\n", + " "map_548e2f939b5f09233d27b4839a255f48",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -6594,13 +6771,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_39c36108913b555af0569e2f3ea39caa);\n", + " L.control.scale().addTo(map_548e2f939b5f09233d27b4839a255f48);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_2520013e4dab6d96646f911dcbd657e6 = L.tileLayer(\n", + " var tile_layer_c8ec6c167f9ff19000ba3b71c566b5d6 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6617,10 +6794,10 @@ " );\n", " \n", " \n", - " tile_layer_2520013e4dab6d96646f911dcbd657e6.addTo(map_39c36108913b555af0569e2f3ea39caa);\n", + " tile_layer_c8ec6c167f9ff19000ba3b71c566b5d6.addTo(map_548e2f939b5f09233d27b4839a255f48);\n", " \n", " \n", - " var tile_layer_591cced69b59baaef7f67178f722c15c = L.tileLayer(\n", + " var tile_layer_159df65bbb87b13ff86864ad32216878 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6637,10 +6814,10 @@ " );\n", " \n", " \n", - " tile_layer_591cced69b59baaef7f67178f722c15c.addTo(map_39c36108913b555af0569e2f3ea39caa);\n", + " tile_layer_159df65bbb87b13ff86864ad32216878.addTo(map_548e2f939b5f09233d27b4839a255f48);\n", " \n", " \n", - " var tile_layer_4f8cc79b56527ea4ab038c7be3304f0a = L.tileLayer(\n", + " var tile_layer_437d8d506aa8925a5ffdfac9f868d9f1 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C1",\n", " {\n", " "minZoom": 0,\n", @@ -6657,10 +6834,10 @@ " );\n", " \n", " \n", - " tile_layer_4f8cc79b56527ea4ab038c7be3304f0a.addTo(map_39c36108913b555af0569e2f3ea39caa);\n", + " tile_layer_437d8d506aa8925a5ffdfac9f868d9f1.addTo(map_548e2f939b5f09233d27b4839a255f48);\n", " \n", " \n", - " var tile_layer_3bcdb97286b64f5f42198600e966a21b = L.tileLayer(\n", + " var tile_layer_075e446d51c49516ae85154e0c178eb2 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vg-greenfield/items/DOW_Greenfield_VG_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6677,40 +6854,40 @@ " );\n", " \n", " \n", - " tile_layer_3bcdb97286b64f5f42198600e966a21b.addTo(map_39c36108913b555af0569e2f3ea39caa);\n", + " tile_layer_075e446d51c49516ae85154e0c178eb2.addTo(map_548e2f939b5f09233d27b4839a255f48);\n", " \n", " \n", - " var side_by_side_layers_79fd0589142bd270f358022a0a663529 = L.control.sideBySide(\n", - " tile_layer_4f8cc79b56527ea4ab038c7be3304f0a, tile_layer_3bcdb97286b64f5f42198600e966a21b\n", - " ).addTo(map_39c36108913b555af0569e2f3ea39caa);\n", + " var side_by_side_layers_0a1c04c753a7837e1c3d6098cbad2d8c = L.control.sideBySide(\n", + " tile_layer_437d8d506aa8925a5ffdfac9f868d9f1, tile_layer_075e446d51c49516ae85154e0c178eb2\n", + " ).addTo(map_548e2f939b5f09233d27b4839a255f48);\n", " \n", " \n", - " var layer_control_72d346e373480d91236a177f18e9df39_layers = {\n", + " var layer_control_2167580b51c1c0ca7e85788eedc43087_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_2520013e4dab6d96646f911dcbd657e6,\n", + " "ESRI Satellite" : tile_layer_c8ec6c167f9ff19000ba3b71c566b5d6,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_591cced69b59baaef7f67178f722c15c,\n", - " "DOW7 Correlation Coefficient" : tile_layer_4f8cc79b56527ea4ab038c7be3304f0a,\n", - " "DOW7 Velocity" : tile_layer_3bcdb97286b64f5f42198600e966a21b,\n", + " "Place Labels" : tile_layer_159df65bbb87b13ff86864ad32216878,\n", + " "DOW7 Correlation Coefficient" : tile_layer_437d8d506aa8925a5ffdfac9f868d9f1,\n", + " "DOW7 Velocity" : tile_layer_075e446d51c49516ae85154e0c178eb2,\n", " },\n", " };\n", - " let layer_control_72d346e373480d91236a177f18e9df39 = L.control.layers(\n", - " layer_control_72d346e373480d91236a177f18e9df39_layers.base_layers,\n", - " layer_control_72d346e373480d91236a177f18e9df39_layers.overlays,\n", + " let layer_control_2167580b51c1c0ca7e85788eedc43087 = L.control.layers(\n", + " layer_control_2167580b51c1c0ca7e85788eedc43087_layers.base_layers,\n", + " layer_control_2167580b51c1c0ca7e85788eedc43087_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_39c36108913b555af0569e2f3ea39caa);\n", + " ).addTo(map_548e2f939b5f09233d27b4839a255f48);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 19, @@ -7785,7 +7962,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_9604a465b2e2fda357f1f77b92e774f5 {\n", + " #map_02c522f4f0f2595741bebcb00ea1091b {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -7818,11 +7995,240 @@ " </script>\n", "\n", " \n", - " <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js"></script>\n", "</head>\n", "<body>\n", " \n", " \n", + " <div style="\n", + " position: fixed;\n", + " top: 50px;\n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " background: white;\n", + " padding: 15px 20px 40px 20px;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " ">\n", + " <div style="\n", + " position: relative;\n", + " width: 300px;\n", + " height: 15px;\n", + " background: linear-gradient(to right, rgba(0, 0, 128, 1) 0.0%, rgba(0, 14, 109, 1) 1.0101010101010102%, rgba(0, 36, 80, 1) 2.0202020202020203%, rgba(0, 51, 62, 1) 3.0303030303030303%, rgba(0, 72, 33, 1) 4.040404040404041%, rgba(0, 87, 15, 1) 5.05050505050505%, rgba(0, 81, 38, 1) 6.0606060606060606%, rgba(0, 61, 88, 1) 7.07070707070707%, rgba(0, 47, 121, 1) 8.080808080808081%, rgba(0, 27, 171, 1) 9.090909090909092%, rgba(0, 13, 205, 1) 10.1010101010101%, rgba(0, 14, 255, 1) 11.11111111111111%, rgba(0, 56, 255, 1) 12.121212121212121%, rgba(0, 84, 255, 1) 13.131313131313133%, rgba(0, 127, 255, 1) 14.14141414141414%, rgba(0, 155, 255, 1) 15.151515151515152%, rgba(0, 192, 255, 1) 16.161616161616163%, rgba(0, 202, 255, 1) 17.17171717171717%, rgba(0, 215, 255, 1) 18.181818181818183%, rgba(0, 228, 255, 1) 19.19191919191919%, rgba(0, 237, 255, 1) 20.2020202020202%, rgba(0, 250, 241, 1) 21.21212121212121%, rgba(0, 254, 228, 1) 22.22222222222222%, rgba(0, 253, 209, 1) 23.232323232323232%, rgba(0, 251, 189, 1) 24.242424242424242%, rgba(0, 250, 176, 1) 25.252525252525253%, rgba(0, 250, 156, 1) 26.262626262626267%, rgba(0, 250, 135, 1) 27.27272727272727%, rgba(0, 251, 104, 1) 28.28282828282828%, rgba(0, 252, 83, 1) 29.292929292929294%, rgba(0, 253, 52, 1) 30.303030303030305%, rgba(6, 254, 20, 1) 31.313131313131315%, rgba(19, 251, 0, 1) 32.323232323232325%, rgba(38, 239, 0, 1) 33.33333333333333%, rgba(50, 232, 0, 1) 34.34343434343434%, rgba(70, 221, 0, 1) 35.35353535353536%, rgba(89, 209, 0, 1) 36.36363636363637%, rgba(101, 209, 0, 1) 37.37373737373738%, rgba(107, 219, 0, 1) 38.38383838383838%, rgba(111, 225, 0, 1) 39.39393939393939%, rgba(117, 235, 0, 1) 40.4040404040404%, rgba(123, 245, 0, 1) 41.41414141414141%, rgba(127, 251, 7, 1) 42.42424242424242%, rgba(141, 255, 19, 1) 43.43434343434344%, rgba(150, 255, 27, 1) 44.44444444444444%, rgba(164, 255, 39, 1) 45.45454545454545%, rgba(173, 255, 47, 1) 46.464646464646464%, rgba(186, 255, 59, 1) 47.474747474747474%, rgba(200, 255, 47, 1) 48.484848484848484%, rgba(209, 255, 39, 1) 49.494949494949495%, rgba(223, 255, 27, 1) 50.505050505050505%, rgba(232, 255, 19, 1) 51.515151515151516%, rgba(245, 252, 7, 1) 52.52525252525253%, rgba(255, 245, 0, 1) 53.535353535353536%, rgba(255, 240, 0, 1) 54.54545454545454%, rgba(255, 232, 0, 1) 55.55555555555556%, rgba(255, 227, 0, 1) 56.56565656565656%, rgba(255, 220, 0, 1) 57.57575757575758%, rgba(255, 215, 1, 1) 58.58585858585859%, rgba(255, 208, 4, 1) 59.59595959595959%, rgba(255, 200, 7, 1) 60.60606060606061%, rgba(255, 195, 9, 1) 61.61616161616161%, rgba(255, 188, 12, 1) 62.62626262626263%, rgba(255, 177, 13, 1) 63.63636363636363%, rgba(255, 153, 10, 1) 64.64646464646465%, rgba(255, 128, 7, 1) 65.65656565656566%, rgba(255, 112, 5, 1) 66.66666666666666%, rgba(255, 87, 2, 1) 67.67676767676768%, rgba(255, 71, 0, 1) 68.68686868686868%, rgba(255, 57, 0, 1) 69.6969696969697%, rgba(255, 42, 0, 1) 70.70707070707071%, rgba(255, 33, 0, 1) 71.71717171717171%, rgba(255, 19, 0, 1) 72.72727272727273%, rgba(255, 9, 0, 1) 73.73737373737373%, rgba(255, 0, 53, 1) 74.74747474747475%, rgba(255, 0, 88, 1) 75.75757575757575%, rgba(255, 0, 141, 1) 76.76767676767676%, rgba(255, 0, 194, 1) 77.77777777777779%, rgba(255, 0, 230, 1) 78.78787878787878%, rgba(241, 6, 255, 1) 79.7979797979798%, rgba(227, 13, 255, 1) 80.8080808080808%, rgba(206, 24, 255, 1) 81.81818181818183%, rgba(186, 34, 255, 1) 82.82828282828282%, rgba(172, 41, 255, 1) 83.83838383838383%, rgba(164, 56, 252, 1) 84.84848484848484%, rgba(176, 68, 250, 1) 85.85858585858585%, rgba(194, 86, 246, 1) 86.86868686868688%, rgba(205, 97, 244, 1) 87.87878787878788%, rgba(223, 115, 240, 1) 88.88888888888889%, rgba(236, 132, 238, 1) 89.8989898989899%, rgba(237, 141, 240, 1) 90.9090909090909%, rgba(239, 155, 241, 1) 91.91919191919192%, rgba(241, 164, 243, 1) 92.92929292929293%, rgba(243, 178, 244, 1) 93.93939393939394%, rgba(245, 192, 246, 1) 94.94949494949495%, rgba(246, 201, 247, 1) 95.95959595959596%, rgba(249, 215, 249, 1) 96.96969696969697%, rgba(250, 224, 250, 1) 97.97979797979798%, rgba(252, 238, 252, 1) 98.98989898989899%, rgba(254, 247, 254, 1) 100.0%);\n", + " border: 1px solid black;\n", + " margin: 0 auto;\n", + " ">\n", + " <div style="position: relative; width: 100%; height: 100%;">\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 0.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 10.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 20.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 30.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 40.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 50.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 60.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 70.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 80.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 90.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 100.0%;\n", + " top: 0;\n", + " width: 1px;\n", + " height: 8px;\n", + " background: black;\n", + " "></div>\n", + " \n", + " </div>\n", + " <div style="position: relative; width: 100%; height: 30px;">\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 0.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">55</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 10.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">74.50</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 20.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">94</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 30.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">113.50</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 40.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">133</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 50.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">152.50</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 60.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">172</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 70.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">191.50</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 80.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">211</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 90.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">230.50</div>\n", + " \n", + " <div style="\n", + " position: absolute;\n", + " left: 100.0%;\n", + " transform: translateX(-50%);\n", + " top: 10px;\n", + " font-size: 11px;\n", + " white-space: nowrap;\n", + " ">250</div>\n", + " \n", + " </div>\n", + " </div>\n", + " <div style="text-align: center; margin-top: 25px; font-size: 12px;">\n", + " mph\n", + " </div>\n", + " </div>\n", + " \n", + " \n", " <div style="\n", " position: fixed;\n", " top: 10px;\n", @@ -7839,14 +8245,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_9604a465b2e2fda357f1f77b92e774f5" ></div>\n", + " <div class="folium-map" id="map_02c522f4f0f2595741bebcb00ea1091b" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_9604a465b2e2fda357f1f77b92e774f5 = L.map(\n", - " "map_9604a465b2e2fda357f1f77b92e774f5",\n", + " var map_02c522f4f0f2595741bebcb00ea1091b = L.map(\n", + " "map_02c522f4f0f2595741bebcb00ea1091b",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -7858,13 +8264,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", + " L.control.scale().addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_ccc57bd051baf6bdc8c8e9772ff4ae3c = L.tileLayer(\n", + " var tile_layer_68604115c70fc0b6e9782498f37ea1e0 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -7881,10 +8287,10 @@ " );\n", " \n", " \n", - " tile_layer_ccc57bd051baf6bdc8c8e9772ff4ae3c.addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", + " tile_layer_68604115c70fc0b6e9782498f37ea1e0.addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", " \n", " \n", - " var tile_layer_afc14deb22b12d2d97e02915c6e5f4c1 = L.tileLayer(\n", + " var tile_layer_05be57d55a1456146ddb308b7af1aed2 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -7901,10 +8307,10 @@ " );\n", " \n", " \n", - " tile_layer_afc14deb22b12d2d97e02915c6e5f4c1.addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", + " tile_layer_05be57d55a1456146ddb308b7af1aed2.addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", " \n", " \n", - " var tile_layer_ee2323dfab993e7ecdb3d10a20d77659 = L.tileLayer(\n", + " var tile_layer_86ecf4d82e22868524c4b5857aaed000 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=gist_ncar\\u0026rescale=55%2C250",\n", " {\n", " "minZoom": 0,\n", @@ -7921,86 +8327,34 @@ " );\n", " \n", " \n", - " tile_layer_ee2323dfab993e7ecdb3d10a20d77659.addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", + " tile_layer_86ecf4d82e22868524c4b5857aaed000.addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", " \n", " \n", - " var layer_control_752517238388447dc8b22c52dc1e57d9_layers = {\n", + " var layer_control_a3503b775bc65474a745d3f27edc46d9_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_ccc57bd051baf6bdc8c8e9772ff4ae3c,\n", + " "ESRI Satellite" : tile_layer_68604115c70fc0b6e9782498f37ea1e0,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_afc14deb22b12d2d97e02915c6e5f4c1,\n", - " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_ee2323dfab993e7ecdb3d10a20d77659,\n", + " "Place Labels" : tile_layer_05be57d55a1456146ddb308b7af1aed2,\n", + " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_86ecf4d82e22868524c4b5857aaed000,\n", " },\n", " };\n", - " let layer_control_752517238388447dc8b22c52dc1e57d9 = L.control.layers(\n", - " layer_control_752517238388447dc8b22c52dc1e57d9_layers.base_layers,\n", - " layer_control_752517238388447dc8b22c52dc1e57d9_layers.overlays,\n", + " let layer_control_a3503b775bc65474a745d3f27edc46d9 = L.control.layers(\n", + " layer_control_a3503b775bc65474a745d3f27edc46d9_layers.base_layers,\n", + " layer_control_a3503b775bc65474a745d3f27edc46d9_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", + " ).addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", "\n", " \n", - " \n", - " var color_map_8347a176623e0bfe545cffbd6c2188fd = {};\n", - "\n", - " \n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.color = d3.scale.threshold()\n", - " .domain([55.0, 55.390781563126254, 55.78156312625251, 56.17234468937876, 56.56312625250501, 56.95390781563126, 57.344689378757515, 57.73547094188377, 58.12625250501002, 58.51703406813627, 58.90781563126252, 59.298597194388776, 59.68937875751503, 60.08016032064128, 60.47094188376754, 60.86172344689379, 61.25250501002004, 61.64328657314629, 62.034068136272545, 62.4248496993988, 62.81563126252505, 63.2064128256513, 63.59719438877755, 63.987975951903806, 64.37875751503006, 64.76953907815631, 65.16032064128257, 65.55110220440882, 65.94188376753507, 66.33266533066133, 66.72344689378758, 67.11422845691382, 67.50501002004007, 67.89579158316633, 68.28657314629258, 68.67735470941884, 69.06813627254509, 69.45891783567134, 69.8496993987976, 70.24048096192385, 70.6312625250501, 71.02204408817636, 71.4128256513026, 71.80360721442887, 72.1943887775551, 72.58517034068136, 72.97595190380761, 73.36673346693387, 73.75751503006012, 74.14829659318637, 74.53907815631263, 74.92985971943888, 75.32064128256513, 75.71142284569139, 76.10220440881764, 76.49298597194388, 76.88376753507015, 77.27454909819639, 77.66533066132264, 78.0561122244489, 78.44689378757515, 78.8376753507014, 79.22845691382766, 79.61923847695391, 80.01002004008016, 80.40080160320642, 80.79158316633266, 81.18236472945893, 81.57314629258516, 81.96392785571142, 82.35470941883767, 82.74549098196393, 83.13627254509018, 83.52705410821643, 83.91783567134269, 84.30861723446894, 84.6993987975952, 85.09018036072145, 85.4809619238477, 85.87174348697394, 86.26252505010021, 86.65330661322645, 87.04408817635272, 87.43486973947896, 87.82565130260521, 88.21643286573146, 88.60721442885772, 88.99799599198397, 89.38877755511022, 89.77955911823648, 90.17034068136272, 90.56112224448898, 90.95190380761522, 91.34268537074149, 91.73346693386773, 92.12424849699399, 92.51503006012024, 92.90581162324649, 93.29659318637275, 93.687374749499, 94.07815631262525, 94.4689378757515, 94.85971943887776, 95.250501002004, 95.64128256513027, 96.03206412825651, 96.42284569138278, 96.81362725450902, 97.20440881763527, 97.59519038076152, 97.98597194388778, 98.37675350701403, 98.76753507014028, 99.15831663326654, 99.54909819639278, 99.93987975951904, 100.33066132264528, 100.72144288577155, 101.11222444889779, 101.50300601202404, 101.8937875751503, 102.28456913827655, 102.6753507014028, 103.06613226452906, 103.45691382765531, 103.84769539078155, 104.23847695390782, 104.62925851703406, 105.02004008016033, 105.41082164328657, 105.80160320641284, 106.19238476953907, 106.58316633266533, 106.97394789579158, 107.36472945891784, 107.75551102204409, 108.14629258517034, 108.5370741482966, 108.92785571142284, 109.3186372745491, 109.70941883767534, 110.10020040080161, 110.49098196392785, 110.88176352705412, 111.27254509018036, 111.66332665330661, 112.05410821643287, 112.44488977955912, 112.83567134268537, 113.22645290581163, 113.61723446893788, 114.00801603206412, 114.39879759519039, 114.78957915831663, 115.1803607214429, 115.57114228456913, 115.96192384769539, 116.35270541082164, 116.7434869739479, 117.13426853707415, 117.5250501002004, 117.91583166332666, 118.3066132264529, 118.69739478957916, 119.08817635270542, 119.47895791583166, 119.86973947895791, 120.26052104208416, 120.65130260521042, 121.04208416833667, 121.43286573146293, 121.82364729458918, 122.21442885771543, 122.60521042084169, 122.99599198396794, 123.3867735470942, 123.77755511022045, 124.16833667334669, 124.55911823647294, 124.9498997995992, 125.34068136272545, 125.7314629258517, 126.12224448897796, 126.51302605210421, 126.90380761523046, 127.29458917835672, 127.68537074148297, 128.07615230460922, 128.46693386773546, 128.85771543086173, 129.24849699398797, 129.6392785571142, 130.03006012024048, 130.42084168336675, 130.81162324649299, 131.20240480961922, 131.5931863727455, 131.98396793587176, 132.374749498998, 132.76553106212424, 133.1563126252505, 133.54709418837675, 133.937875751503, 134.32865731462925, 134.71943887775552, 135.11022044088176, 135.501002004008, 135.89178356713427, 136.28256513026054, 136.67334669338678, 137.06412825651302, 137.45490981963928, 137.84569138276555, 138.23647294589176, 138.62725450901803, 139.0180360721443, 139.40881763527054, 139.79959919839678, 140.19038076152304, 140.5811623246493, 140.97194388777555, 141.3627254509018, 141.75350701402806, 142.14428857715433, 142.53507014028057, 142.9258517034068, 143.31663326653307, 143.7074148296593, 144.09819639278555, 144.48897795591182, 144.8797595190381, 145.27054108216433, 145.66132264529057, 146.05210420841684, 146.4428857715431, 146.83366733466934, 147.22444889779558, 147.61523046092185, 148.0060120240481, 148.39679358717433, 148.7875751503006, 149.17835671342687, 149.5691382765531, 149.95991983967934, 150.3507014028056, 150.74148296593188, 151.13226452905812, 151.52304609218436, 151.91382765531063, 152.3046092184369, 152.6953907815631, 153.08617234468937, 153.47695390781564, 153.86773547094188, 154.25851703406812, 154.6492985971944, 155.04008016032066, 155.4308617234469, 155.82164328657313, 156.2124248496994, 156.60320641282567, 156.9939879759519, 157.38476953907815, 157.77555110220442, 158.16633266533066, 158.5571142284569, 158.94789579158316, 159.33867735470943, 159.72945891783567, 160.1202404809619, 160.51102204408818, 160.90180360721445, 161.2925851703407, 161.68336673346693, 162.0741482965932, 162.46492985971943, 162.85571142284567, 163.24649298597194, 163.6372745490982, 164.02805611222445, 164.4188376753507, 164.80961923847696, 165.20040080160322, 165.59118236472946, 165.9819639278557, 166.37274549098197, 166.76352705410824, 167.15430861723445, 167.54509018036072, 167.93587174348698, 168.32665330661322, 168.71743486973946, 169.10821643286573, 169.498997995992, 169.88977955911824, 170.28056112224448, 170.67134268537075, 171.062124248497, 171.45290581162325, 171.8436873747495, 172.23446893787576, 172.625250501002, 173.01603206412824, 173.4068136272545, 173.79759519038078, 174.18837675350701, 174.57915831663325, 174.96993987975952, 175.3607214428858, 175.75150300601203, 176.14228456913827, 176.53306613226454, 176.92384769539078, 177.31462925851702, 177.70541082164328, 178.09619238476955, 178.4869739478958, 178.87775551102203, 179.2685370741483, 179.65931863727457, 180.0501002004008, 180.44088176352705, 180.8316633266533, 181.22244488977955, 181.6132264529058, 182.00400801603206, 182.39478957915833, 182.78557114228457, 183.17635270541084, 183.56713426853707, 183.9579158316633, 184.34869739478958, 184.73947895791582, 185.1302605210421, 185.52104208416833, 185.9118236472946, 186.30260521042084, 186.6933867735471, 187.08416833667334, 187.4749498997996, 187.86573146292585, 188.2565130260521, 188.64729458917836, 189.0380761523046, 189.42885771543087, 189.8196392785571, 190.21042084168337, 190.6012024048096, 190.99198396793588, 191.38276553106212, 191.7735470941884, 192.16432865731463, 192.5551102204409, 192.94589178356713, 193.33667334669337, 193.72745490981964, 194.11823647294588, 194.50901803607215, 194.8997995991984, 195.29058116232466, 195.6813627254509, 196.07214428857716, 196.4629258517034, 196.85370741482967, 197.2444889779559, 197.63527054108218, 198.02605210420842, 198.41683366733466, 198.80761523046093, 199.19839679358716, 199.58917835671343, 199.97995991983967, 200.37074148296594, 200.76152304609218, 201.15230460921845, 201.5430861723447, 201.93386773547095, 202.3246492985972, 202.71543086172343, 203.1062124248497, 203.49699398797594, 203.8877755511022, 204.27855711422845, 204.66933867735472, 205.06012024048096, 205.45090180360722, 205.84168336673346, 206.23246492985973, 206.62324649298597, 207.01402805611224, 207.40480961923848, 207.79559118236472, 208.18637274549098, 208.57715430861722, 208.9679358717435, 209.35871743486973, 209.749498997996, 210.14028056112224, 210.5310621242485, 210.92184368737475, 211.31262525050101, 211.70340681362725, 212.0941883767535, 212.48496993987976, 212.875751503006, 213.26653306613227, 213.6573146292585, 214.04809619238478, 214.43887775551102, 214.82965931863728, 215.22044088176352, 215.6112224448898, 216.00200400801603, 216.3927855711423, 216.78356713426854, 217.17434869739478, 217.56513026052104, 217.95591182364728, 218.34669338677355, 218.7374749498998, 219.12825651302606, 219.5190380761523, 219.90981963927857, 220.3006012024048, 220.69138276553107, 221.0821643286573, 221.47294589178355, 221.86372745490982, 222.25450901803606, 222.64529058116233, 223.03607214428857, 223.42685370741484, 223.81763527054107, 224.20841683366734, 224.59919839679358, 224.98997995991985, 225.3807615230461, 225.77154308617236, 226.1623246492986, 226.55310621242484, 226.9438877755511, 227.33466933867734, 227.7254509018036, 228.11623246492985, 228.50701402805612, 228.89779559118236, 229.28857715430863, 229.67935871743487, 230.07014028056113, 230.46092184368737, 230.85170340681364, 231.24248496993988, 231.63326653306612, 232.0240480961924, 232.41482965931863, 232.8056112224449, 233.19639278557113, 233.5871743486974, 233.97795591182364, 234.3687374749499, 234.75951903807615, 235.15030060120242, 235.54108216432866, 235.9318637274549, 236.32264529058116, 236.7134268537074, 237.10420841683367, 237.4949899799599, 237.88577154308618, 238.27655310621242, 238.6673346693387, 239.05811623246493, 239.4488977955912, 239.83967935871743, 240.2304609218437, 240.62124248496994, 241.01202404809618, 241.40280561122245, 241.7935871743487, 242.18436873747495, 242.5751503006012, 242.96593186372746, 243.3567134268537, 243.74749498997997, 244.1382765531062, 244.52905811623248, 244.91983967935872, 245.31062124248496, 245.70140280561122, 246.09218436873746, 246.48296593186373, 246.87374749498997, 247.26452905811624, 247.65531062124248, 248.04609218436875, 248.43687374749499, 248.82765531062125, 249.2184368737475, 249.60921843687376, 250.0])\n", - " .range(['#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000080ff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#000effff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#00ffe5ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#26f000ff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#96ff1bff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ffe900ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff7005ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#ff00c3ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#e074f1ff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff', '#fff8ffff']);\n", - " \n", - "\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.x = d3.scale.linear()\n", - " .domain([55.0, 250.0])\n", - " .range([0, 450 - 50]);\n", - "\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.legend = L.control({position: 'topright'});\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.legend.onAdd = function (map) {var div = L.DomUtil.create('div', 'legend'); return div};\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.legend.addTo(map_9604a465b2e2fda357f1f77b92e774f5);\n", - "\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.xAxis = d3.svg.axis()\n", - " .scale(color_map_8347a176623e0bfe545cffbd6c2188fd.x)\n", - " .orient("top")\n", - " .tickSize(1)\n", - " .tickValues([55.0, '', 94.0, '', 133.0, '', 172.0, '', 211.0, '', 250.0, '']);\n", - "\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.svg = d3.select(".legend.leaflet-control").append("svg")\n", - " .attr("id", 'legend')\n", - " .attr("width", 450)\n", - " .attr("height", 40);\n", - "\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.g = color_map_8347a176623e0bfe545cffbd6c2188fd.svg.append("g")\n", - " .attr("class", "key")\n", - " .attr("fill", "black")\n", - " .attr("transform", "translate(25,16)");\n", - "\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.g.selectAll("rect")\n", - " .data(color_map_8347a176623e0bfe545cffbd6c2188fd.color.range().map(function(d, i) {\n", - " return {\n", - " x0: i ? color_map_8347a176623e0bfe545cffbd6c2188fd.x(color_map_8347a176623e0bfe545cffbd6c2188fd.color.domain()[i - 1]) : color_map_8347a176623e0bfe545cffbd6c2188fd.x.range()[0],\n", - " x1: i < color_map_8347a176623e0bfe545cffbd6c2188fd.color.domain().length ? color_map_8347a176623e0bfe545cffbd6c2188fd.x(color_map_8347a176623e0bfe545cffbd6c2188fd.color.domain()[i]) : color_map_8347a176623e0bfe545cffbd6c2188fd.x.range()[1],\n", - " z: d\n", - " };\n", - " }))\n", - " .enter().append("rect")\n", - " .attr("height", 40 - 30)\n", - " .attr("x", function(d) { return d.x0; })\n", - " .attr("width", function(d) { return d.x1 - d.x0; })\n", - " .style("fill", function(d) { return d.z; });\n", - "\n", - " color_map_8347a176623e0bfe545cffbd6c2188fd.g.call(color_map_8347a176623e0bfe545cffbd6c2188fd.xAxis).append("text")\n", - " .attr("class", "caption")\n", - " .attr("y", 21)\n", - " .attr("fill", "black")\n", - " .text("mph");\n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 22, @@ -10095,7 +10449,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_af1a928c8aae606b15a0ff29b365afcf {\n", + " #map_3d992de5d3a71c9b5e5466f6840ccbf4 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -10202,14 +10556,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_af1a928c8aae606b15a0ff29b365afcf" ></div>\n", + " <div class="folium-map" id="map_3d992de5d3a71c9b5e5466f6840ccbf4" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_af1a928c8aae606b15a0ff29b365afcf = L.map(\n", - " "map_af1a928c8aae606b15a0ff29b365afcf",\n", + " var map_3d992de5d3a71c9b5e5466f6840ccbf4 = L.map(\n", + " "map_3d992de5d3a71c9b5e5466f6840ccbf4",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -10221,13 +10575,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", + " L.control.scale().addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_3b0f0d3457283000eff4b4175b404e82 = L.tileLayer(\n", + " var tile_layer_9982e9e4eddaf0e0ddc6a16fe83682a3 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -10244,10 +10598,10 @@ " );\n", " \n", " \n", - " tile_layer_3b0f0d3457283000eff4b4175b404e82.addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", + " tile_layer_9982e9e4eddaf0e0ddc6a16fe83682a3.addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", " \n", " \n", - " var tile_layer_a4848b67f54326186c9e33682b2e617c = L.tileLayer(\n", + " var tile_layer_2e4eec11c384bf4e2ba724a99f9deba1 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=3\\u0026bidx=2\\u0026bidx=1\\u0026rescale=0%2C2500\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -10264,10 +10618,10 @@ " );\n", " \n", " \n", - " tile_layer_a4848b67f54326186c9e33682b2e617c.addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", + " tile_layer_2e4eec11c384bf4e2ba724a99f9deba1.addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", " \n", " \n", - " var tile_layer_1e616e9c27a463ca3b3c8dfb6e90e276 = L.tileLayer(\n", + " var tile_layer_075a803315e4e0eeb407c38936e02ae6 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=1\\u0026bidx=2\\u0026bidx=3\\u0026rescale=0%2C255\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -10284,39 +10638,39 @@ " );\n", " \n", " \n", - " tile_layer_1e616e9c27a463ca3b3c8dfb6e90e276.addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", + " tile_layer_075a803315e4e0eeb407c38936e02ae6.addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", " \n", " \n", - " var side_by_side_layers_e34aa6325d65ee7cc41d98436663078e = L.control.sideBySide(\n", - " tile_layer_a4848b67f54326186c9e33682b2e617c, tile_layer_1e616e9c27a463ca3b3c8dfb6e90e276\n", - " ).addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", + " var side_by_side_layers_93c6eb19e4b441080f5cec2381c81502 = L.control.sideBySide(\n", + " tile_layer_2e4eec11c384bf4e2ba724a99f9deba1, tile_layer_075a803315e4e0eeb407c38936e02ae6\n", + " ).addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", " \n", " \n", - " var layer_control_94325c70fced16b8f893dee9064441cf_layers = {\n", + " var layer_control_b1de6b7341542953fd65a39a41b3b171_layers = {\n", " base_layers : {\n", - " "CartoDB Positron" : tile_layer_3b0f0d3457283000eff4b4175b404e82,\n", + " "CartoDB Positron" : tile_layer_9982e9e4eddaf0e0ddc6a16fe83682a3,\n", " },\n", " overlays : {\n", - " "PlanetScope Pre-Tornado" : tile_layer_a4848b67f54326186c9e33682b2e617c,\n", - " "PlanetScope Post-Tornado" : tile_layer_1e616e9c27a463ca3b3c8dfb6e90e276,\n", + " "PlanetScope Pre-Tornado" : tile_layer_2e4eec11c384bf4e2ba724a99f9deba1,\n", + " "PlanetScope Post-Tornado" : tile_layer_075a803315e4e0eeb407c38936e02ae6,\n", " },\n", " };\n", - " let layer_control_94325c70fced16b8f893dee9064441cf = L.control.layers(\n", - " layer_control_94325c70fced16b8f893dee9064441cf_layers.base_layers,\n", - " layer_control_94325c70fced16b8f893dee9064441cf_layers.overlays,\n", + " let layer_control_b1de6b7341542953fd65a39a41b3b171 = L.control.layers(\n", + " layer_control_b1de6b7341542953fd65a39a41b3b171_layers.base_layers,\n", + " layer_control_b1de6b7341542953fd65a39a41b3b171_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_af1a928c8aae606b15a0ff29b365afcf);\n", + " ).addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 25, From ff414a80fbd0740406b473ecfb0c555965c8f306 Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 22 Aug 2025 08:42:07 -0500 Subject: [PATCH 22/28] run tornadoes --- .../stories/tornadoes_2024_notebook.ipynb | 322 +++++++++--------- 1 file changed, 161 insertions(+), 161 deletions(-) diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 4dbe89a0..839f38f3 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -1159,7 +1159,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_ec3c8a2c1a6bd9007a9d6082405e7331 {\n", + " #map_d82c11273fa90b64da2e339b293e2620 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -1212,7 +1212,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_ec3c8a2c1a6bd9007a9d6082405e7331" ></div>\n", + " <div class="folium-map" id="map_d82c11273fa90b64da2e339b293e2620" ></div>\n", " \n", " \n", " <div style="\n", @@ -1313,8 +1313,8 @@ "<script>\n", " \n", " \n", - " var map_ec3c8a2c1a6bd9007a9d6082405e7331 = L.map(\n", - " "map_ec3c8a2c1a6bd9007a9d6082405e7331",\n", + " var map_d82c11273fa90b64da2e339b293e2620 = L.map(\n", + " "map_d82c11273fa90b64da2e339b293e2620",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", @@ -1326,13 +1326,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", + " L.control.scale().addTo(map_d82c11273fa90b64da2e339b293e2620);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_1e8ad56bc8854a2dba923fd45d983ab1 = L.tileLayer(\n", + " var tile_layer_df9bd856f0d3315960c8f07a5713c020 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1349,10 +1349,10 @@ " );\n", " \n", " \n", - " tile_layer_1e8ad56bc8854a2dba923fd45d983ab1.addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", + " tile_layer_df9bd856f0d3315960c8f07a5713c020.addTo(map_d82c11273fa90b64da2e339b293e2620);\n", " \n", " \n", - " var tile_layer_5e3ccfb0aba7ac6969b6c1256faa2373 = L.tileLayer(\n", + " var tile_layer_adc00621d526ce24ca1bb3287bef0e14 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1369,10 +1369,10 @@ " );\n", " \n", " \n", - " tile_layer_5e3ccfb0aba7ac6969b6c1256faa2373.addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", + " tile_layer_adc00621d526ce24ca1bb3287bef0e14.addTo(map_d82c11273fa90b64da2e339b293e2620);\n", " \n", " \n", - " var tile_layer_91e496888541ede27d88b1847701e1db = L.tileLayer(\n", + " var tile_layer_32e85d71de2418b3b827ce6831a78f36 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -1389,34 +1389,34 @@ " );\n", " \n", " \n", - " tile_layer_91e496888541ede27d88b1847701e1db.addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", + " tile_layer_32e85d71de2418b3b827ce6831a78f36.addTo(map_d82c11273fa90b64da2e339b293e2620);\n", " \n", " \n", - " var layer_control_b9776efed05f5fe0721ac04faa948706_layers = {\n", + " var layer_control_dcef0b3a3689b54ea483a6a006bd3f6a_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_1e8ad56bc8854a2dba923fd45d983ab1,\n", + " "ESRI Satellite" : tile_layer_df9bd856f0d3315960c8f07a5713c020,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_5e3ccfb0aba7ac6969b6c1256faa2373,\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_91e496888541ede27d88b1847701e1db,\n", + " "Place Labels" : tile_layer_adc00621d526ce24ca1bb3287bef0e14,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_32e85d71de2418b3b827ce6831a78f36,\n", " },\n", " };\n", - " let layer_control_b9776efed05f5fe0721ac04faa948706 = L.control.layers(\n", - " layer_control_b9776efed05f5fe0721ac04faa948706_layers.base_layers,\n", - " layer_control_b9776efed05f5fe0721ac04faa948706_layers.overlays,\n", + " let layer_control_dcef0b3a3689b54ea483a6a006bd3f6a = L.control.layers(\n", + " layer_control_dcef0b3a3689b54ea483a6a006bd3f6a_layers.base_layers,\n", + " layer_control_dcef0b3a3689b54ea483a6a006bd3f6a_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_ec3c8a2c1a6bd9007a9d6082405e7331);\n", + " ).addTo(map_d82c11273fa90b64da2e339b293e2620);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 7, @@ -2468,7 +2468,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_3b5677be4025dba28e90587a8cea32b0 {\n", + " #map_63778cba0f083ac7407596180d1765e4 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -2521,7 +2521,7 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_3b5677be4025dba28e90587a8cea32b0" ></div>\n", + " <div class="folium-map" id="map_63778cba0f083ac7407596180d1765e4" ></div>\n", " \n", " \n", " <div style="\n", @@ -2622,8 +2622,8 @@ "<script>\n", " \n", " \n", - " var map_3b5677be4025dba28e90587a8cea32b0 = L.map(\n", - " "map_3b5677be4025dba28e90587a8cea32b0",\n", + " var map_63778cba0f083ac7407596180d1765e4 = L.map(\n", + " "map_63778cba0f083ac7407596180d1765e4",\n", " {\n", " center: [40.3, -84.05],\n", " crs: L.CRS.EPSG3857,\n", @@ -2635,13 +2635,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", + " L.control.scale().addTo(map_63778cba0f083ac7407596180d1765e4);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_3e81f1b1b1cc62673e1837f92cbcda5c = L.tileLayer(\n", + " var tile_layer_1a6623df1343edabb6a504cd2678611d = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2658,10 +2658,10 @@ " );\n", " \n", " \n", - " tile_layer_3e81f1b1b1cc62673e1837f92cbcda5c.addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", + " tile_layer_1a6623df1343edabb6a504cd2678611d.addTo(map_63778cba0f083ac7407596180d1765e4);\n", " \n", " \n", - " var tile_layer_eb2ec860d0eec79be68d28a79ca2b311 = L.tileLayer(\n", + " var tile_layer_9be3254be6a851f9d9ffca278229631b = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2678,10 +2678,10 @@ " );\n", " \n", " \n", - " tile_layer_eb2ec860d0eec79be68d28a79ca2b311.addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", + " tile_layer_9be3254be6a851f9d9ffca278229631b.addTo(map_63778cba0f083ac7407596180d1765e4);\n", " \n", " \n", - " var tile_layer_c8b4c6d5ee02d8cf4947939278ae9b04 = L.tileLayer(\n", + " var tile_layer_f2fb7ef946abe8a7c45a3c0f65d5069b = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -2698,34 +2698,34 @@ " );\n", " \n", " \n", - " tile_layer_c8b4c6d5ee02d8cf4947939278ae9b04.addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", + " tile_layer_f2fb7ef946abe8a7c45a3c0f65d5069b.addTo(map_63778cba0f083ac7407596180d1765e4);\n", " \n", " \n", - " var layer_control_8ee5886b7b78cffdae64244db4fea620_layers = {\n", + " var layer_control_d0b94ce4039e78433d0b3842274c6b56_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_3e81f1b1b1cc62673e1837f92cbcda5c,\n", + " "ESRI Satellite" : tile_layer_1a6623df1343edabb6a504cd2678611d,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_eb2ec860d0eec79be68d28a79ca2b311,\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_c8b4c6d5ee02d8cf4947939278ae9b04,\n", + " "Place Labels" : tile_layer_9be3254be6a851f9d9ffca278229631b,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_f2fb7ef946abe8a7c45a3c0f65d5069b,\n", " },\n", " };\n", - " let layer_control_8ee5886b7b78cffdae64244db4fea620 = L.control.layers(\n", - " layer_control_8ee5886b7b78cffdae64244db4fea620_layers.base_layers,\n", - " layer_control_8ee5886b7b78cffdae64244db4fea620_layers.overlays,\n", + " let layer_control_d0b94ce4039e78433d0b3842274c6b56 = L.control.layers(\n", + " layer_control_d0b94ce4039e78433d0b3842274c6b56_layers.base_layers,\n", + " layer_control_d0b94ce4039e78433d0b3842274c6b56_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_3b5677be4025dba28e90587a8cea32b0);\n", + " ).addTo(map_63778cba0f083ac7407596180d1765e4);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 10, @@ -3805,7 +3805,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_40c23b4acbc21901192a56dc595659f0 {\n", + " #map_a98c871c8d741fa6379fcbb0d30062a8 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -3849,13 +3849,13 @@ " transform: translateX(-50%);\n", " z-index: 1000;\n", " background: white;\n", - " padding: 15px 20px 40px 20px;\n", + " padding: 15px 20px 10px 20px;\n", " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", " <div style="\n", " position: relative;\n", - " width: 300px;\n", + " width: 450px;\n", " height: 15px;\n", " background: linear-gradient(to right, rgba(0, 0, 255, 1) 0.0%, rgba(4, 4, 255, 1) 1.0101010101010102%, rgba(10, 10, 255, 1) 2.0202020202020203%, rgba(14, 14, 255, 1) 3.0303030303030303%, rgba(20, 20, 255, 1) 4.040404040404041%, rgba(24, 24, 255, 1) 5.05050505050505%, rgba(30, 30, 255, 1) 6.0606060606060606%, rgba(36, 36, 255, 1) 7.07070707070707%, rgba(40, 40, 255, 1) 8.080808080808081%, rgba(46, 46, 255, 1) 9.090909090909092%, rgba(50, 50, 255, 1) 10.1010101010101%, rgba(56, 56, 255, 1) 11.11111111111111%, rgba(62, 62, 255, 1) 12.121212121212121%, rgba(65, 65, 255, 1) 13.131313131313133%, rgba(72, 72, 255, 1) 14.14141414141414%, rgba(76, 76, 255, 1) 15.151515151515152%, rgba(81, 81, 255, 1) 16.161616161616163%, rgba(86, 86, 255, 1) 17.17171717171717%, rgba(92, 92, 255, 1) 18.181818181818183%, rgba(97, 97, 255, 1) 19.19191919191919%, rgba(102, 102, 255, 1) 20.2020202020202%, rgba(108, 108, 255, 1) 21.21212121212121%, rgba(112, 112, 255, 1) 22.22222222222222%, rgba(118, 118, 255, 1) 23.232323232323232%, rgba(124, 124, 255, 1) 24.242424242424242%, rgba(128, 128, 255, 1) 25.252525252525253%, rgba(134, 134, 255, 1) 26.262626262626267%, rgba(138, 138, 255, 1) 27.27272727272727%, rgba(144, 144, 255, 1) 28.28282828282828%, rgba(147, 147, 255, 1) 29.292929292929294%, rgba(154, 154, 255, 1) 30.303030303030305%, rgba(160, 160, 255, 1) 31.313131313131315%, rgba(163, 163, 255, 1) 32.323232323232325%, rgba(170, 170, 255, 1) 33.33333333333333%, rgba(174, 174, 255, 1) 34.34343434343434%, rgba(179, 179, 255, 1) 35.35353535353536%, rgba(186, 186, 255, 1) 36.36363636363637%, rgba(190, 190, 255, 1) 37.37373737373738%, rgba(195, 195, 255, 1) 38.38383838383838%, rgba(200, 200, 255, 1) 39.39393939393939%, rgba(206, 206, 255, 1) 40.4040404040404%, rgba(211, 211, 255, 1) 41.41414141414141%, rgba(216, 216, 255, 1) 42.42424242424242%, rgba(222, 222, 255, 1) 43.43434343434344%, rgba(226, 226, 255, 1) 44.44444444444444%, rgba(232, 232, 255, 1) 45.45454545454545%, rgba(236, 236, 255, 1) 46.464646464646464%, rgba(242, 242, 255, 1) 47.474747474747474%, rgba(248, 248, 255, 1) 48.484848484848484%, rgba(252, 252, 255, 1) 49.494949494949495%, rgba(255, 252, 252, 1) 50.505050505050505%, rgba(255, 248, 248, 1) 51.515151515151516%, rgba(255, 242, 242, 1) 52.52525252525253%, rgba(255, 236, 236, 1) 53.535353535353536%, rgba(255, 232, 232, 1) 54.54545454545454%, rgba(255, 226, 226, 1) 55.55555555555556%, rgba(255, 222, 222, 1) 56.56565656565656%, rgba(255, 216, 216, 1) 57.57575757575758%, rgba(255, 211, 211, 1) 58.58585858585859%, rgba(255, 206, 206, 1) 59.59595959595959%, rgba(255, 200, 200, 1) 60.60606060606061%, rgba(255, 195, 195, 1) 61.61616161616161%, rgba(255, 190, 190, 1) 62.62626262626263%, rgba(255, 186, 186, 1) 63.63636363636363%, rgba(255, 179, 179, 1) 64.64646464646465%, rgba(255, 174, 174, 1) 65.65656565656566%, rgba(255, 170, 170, 1) 66.66666666666666%, rgba(255, 163, 163, 1) 67.67676767676768%, rgba(255, 160, 160, 1) 68.68686868686868%, rgba(255, 154, 154, 1) 69.6969696969697%, rgba(255, 147, 147, 1) 70.70707070707071%, rgba(255, 144, 144, 1) 71.71717171717171%, rgba(255, 138, 138, 1) 72.72727272727273%, rgba(255, 134, 134, 1) 73.73737373737373%, rgba(255, 128, 128, 1) 74.74747474747475%, rgba(255, 124, 124, 1) 75.75757575757575%, rgba(255, 118, 118, 1) 76.76767676767676%, rgba(255, 112, 112, 1) 77.77777777777779%, rgba(255, 108, 108, 1) 78.78787878787878%, rgba(255, 102, 102, 1) 79.7979797979798%, rgba(255, 97, 97, 1) 80.8080808080808%, rgba(255, 92, 92, 1) 81.81818181818183%, rgba(255, 86, 86, 1) 82.82828282828282%, rgba(255, 81, 81, 1) 83.83838383838383%, rgba(255, 76, 76, 1) 84.84848484848484%, rgba(255, 72, 72, 1) 85.85858585858585%, rgba(255, 65, 65, 1) 86.86868686868688%, rgba(255, 62, 62, 1) 87.87878787878788%, rgba(255, 56, 56, 1) 88.88888888888889%, rgba(255, 49, 49, 1) 89.8989898989899%, rgba(255, 46, 46, 1) 90.9090909090909%, rgba(255, 40, 40, 1) 91.91919191919192%, rgba(255, 36, 36, 1) 92.92929292929293%, rgba(255, 30, 30, 1) 93.93939393939394%, rgba(255, 24, 24, 1) 94.94949494949495%, rgba(255, 20, 20, 1) 95.95959595959596%, rgba(255, 14, 14, 1) 96.96969696969697%, rgba(255, 9, 9, 1) 97.97979797979798%, rgba(255, 4, 4, 1) 98.98989898989899%, rgba(255, 0, 0, 1) 100.0%);\n", " border: 1px solid black;\n", @@ -4088,14 +4088,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_40c23b4acbc21901192a56dc595659f0" ></div>\n", + " <div class="folium-map" id="map_a98c871c8d741fa6379fcbb0d30062a8" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_40c23b4acbc21901192a56dc595659f0 = L.map(\n", - " "map_40c23b4acbc21901192a56dc595659f0",\n", + " var map_a98c871c8d741fa6379fcbb0d30062a8 = L.map(\n", + " "map_a98c871c8d741fa6379fcbb0d30062a8",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -4107,13 +4107,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_40c23b4acbc21901192a56dc595659f0);\n", + " L.control.scale().addTo(map_a98c871c8d741fa6379fcbb0d30062a8);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_cb1c82b40f6cea88771c29a8e0f85290 = L.tileLayer(\n", + " var tile_layer_b7730d8f7a5352230a2c1335b664a5ab = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -4130,10 +4130,10 @@ " );\n", " \n", " \n", - " tile_layer_cb1c82b40f6cea88771c29a8e0f85290.addTo(map_40c23b4acbc21901192a56dc595659f0);\n", + " tile_layer_b7730d8f7a5352230a2c1335b664a5ab.addTo(map_a98c871c8d741fa6379fcbb0d30062a8);\n", " \n", " \n", - " var tile_layer_06a9159d1b8dd3bfb9ae89d2a12fd6a8 = L.tileLayer(\n", + " var tile_layer_c7ef2f086e9ee77f1555ddf3ddf0d570 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", @@ -4150,33 +4150,33 @@ " );\n", " \n", " \n", - " tile_layer_06a9159d1b8dd3bfb9ae89d2a12fd6a8.addTo(map_40c23b4acbc21901192a56dc595659f0);\n", + " tile_layer_c7ef2f086e9ee77f1555ddf3ddf0d570.addTo(map_a98c871c8d741fa6379fcbb0d30062a8);\n", " \n", " \n", - " var layer_control_cba310213a3de7c6d0a84978e1469251_layers = {\n", + " var layer_control_5a47bdf2e6120017de7b582504c26cd2_layers = {\n", " base_layers : {\n", - " "CartoDB Dark" : tile_layer_cb1c82b40f6cea88771c29a8e0f85290,\n", + " "CartoDB Dark" : tile_layer_b7730d8f7a5352230a2c1335b664a5ab,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_06a9159d1b8dd3bfb9ae89d2a12fd6a8,\n", + " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_c7ef2f086e9ee77f1555ddf3ddf0d570,\n", " },\n", " };\n", - " let layer_control_cba310213a3de7c6d0a84978e1469251 = L.control.layers(\n", - " layer_control_cba310213a3de7c6d0a84978e1469251_layers.base_layers,\n", - " layer_control_cba310213a3de7c6d0a84978e1469251_layers.overlays,\n", + " let layer_control_5a47bdf2e6120017de7b582504c26cd2 = L.control.layers(\n", + " layer_control_5a47bdf2e6120017de7b582504c26cd2_layers.base_layers,\n", + " layer_control_5a47bdf2e6120017de7b582504c26cd2_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_40c23b4acbc21901192a56dc595659f0);\n", + " ).addTo(map_a98c871c8d741fa6379fcbb0d30062a8);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 13, @@ -6194,7 +6194,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_8fd7e0fe896e9aa95357071c9b0486f3 {\n", + " #map_4a4c3b1e64fee402a7568c02934eb3f4 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6329,14 +6329,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_8fd7e0fe896e9aa95357071c9b0486f3" ></div>\n", + " <div class="folium-map" id="map_4a4c3b1e64fee402a7568c02934eb3f4" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_8fd7e0fe896e9aa95357071c9b0486f3 = L.map(\n", - " "map_8fd7e0fe896e9aa95357071c9b0486f3",\n", + " var map_4a4c3b1e64fee402a7568c02934eb3f4 = L.map(\n", + " "map_4a4c3b1e64fee402a7568c02934eb3f4",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6348,13 +6348,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", + " L.control.scale().addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_a8d1379b9d805c505d747fc4742af6dd = L.tileLayer(\n", + " var tile_layer_682838f7a01c4f72ce563928d72a2426 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6371,10 +6371,10 @@ " );\n", " \n", " \n", - " tile_layer_a8d1379b9d805c505d747fc4742af6dd.addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", + " tile_layer_682838f7a01c4f72ce563928d72a2426.addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", " \n", " \n", - " var tile_layer_0b75e70878a89184f1f07d74d43e158f = L.tileLayer(\n", + " var tile_layer_0114fe68328f007b15eadeef10b2e405 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6391,10 +6391,10 @@ " );\n", " \n", " \n", - " tile_layer_0b75e70878a89184f1f07d74d43e158f.addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", + " tile_layer_0114fe68328f007b15eadeef10b2e405.addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", " \n", " \n", - " var tile_layer_447a7c0eeff62502eedd8b54d1abdbf0 = L.tileLayer(\n", + " var tile_layer_ebd1efdb2d3ec53f56d6125505bb579e = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", " {\n", " "minZoom": 0,\n", @@ -6411,10 +6411,10 @@ " );\n", " \n", " \n", - " tile_layer_447a7c0eeff62502eedd8b54d1abdbf0.addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", + " tile_layer_ebd1efdb2d3ec53f56d6125505bb579e.addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", " \n", " \n", - " var tile_layer_ff4994d961534bf529fac3e3d2206a89 = L.tileLayer(\n", + " var tile_layer_9f67367e98cc840a69b5ba0d49b20ece = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6431,40 +6431,40 @@ " );\n", " \n", " \n", - " tile_layer_ff4994d961534bf529fac3e3d2206a89.addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", + " tile_layer_9f67367e98cc840a69b5ba0d49b20ece.addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", " \n", " \n", - " var side_by_side_layers_e6434dd1e22298f5c940c83db122b0d9 = L.control.sideBySide(\n", - " tile_layer_447a7c0eeff62502eedd8b54d1abdbf0, tile_layer_ff4994d961534bf529fac3e3d2206a89\n", - " ).addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", + " var side_by_side_layers_125dc7610c7866c10141dad0a8900c57 = L.control.sideBySide(\n", + " tile_layer_ebd1efdb2d3ec53f56d6125505bb579e, tile_layer_9f67367e98cc840a69b5ba0d49b20ece\n", + " ).addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", " \n", " \n", - " var layer_control_e87968728ab7eeeb8c0f9af72c5c22f7_layers = {\n", + " var layer_control_85d367bf735a84d083d844848a7fa737_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_a8d1379b9d805c505d747fc4742af6dd,\n", + " "ESRI Satellite" : tile_layer_682838f7a01c4f72ce563928d72a2426,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_0b75e70878a89184f1f07d74d43e158f,\n", - " "DOW7 Reflectivity" : tile_layer_447a7c0eeff62502eedd8b54d1abdbf0,\n", - " "DOW7 Velocity" : tile_layer_ff4994d961534bf529fac3e3d2206a89,\n", + " "Place Labels" : tile_layer_0114fe68328f007b15eadeef10b2e405,\n", + " "DOW7 Reflectivity" : tile_layer_ebd1efdb2d3ec53f56d6125505bb579e,\n", + " "DOW7 Velocity" : tile_layer_9f67367e98cc840a69b5ba0d49b20ece,\n", " },\n", " };\n", - " let layer_control_e87968728ab7eeeb8c0f9af72c5c22f7 = L.control.layers(\n", - " layer_control_e87968728ab7eeeb8c0f9af72c5c22f7_layers.base_layers,\n", - " layer_control_e87968728ab7eeeb8c0f9af72c5c22f7_layers.overlays,\n", + " let layer_control_85d367bf735a84d083d844848a7fa737 = L.control.layers(\n", + " layer_control_85d367bf735a84d083d844848a7fa737_layers.base_layers,\n", + " layer_control_85d367bf735a84d083d844848a7fa737_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_8fd7e0fe896e9aa95357071c9b0486f3);\n", + " ).addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 17, @@ -6617,7 +6617,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_548e2f939b5f09233d27b4839a255f48 {\n", + " #map_eee5a09d841cc8ca005fa0705a148835 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6752,14 +6752,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_548e2f939b5f09233d27b4839a255f48" ></div>\n", + " <div class="folium-map" id="map_eee5a09d841cc8ca005fa0705a148835" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_548e2f939b5f09233d27b4839a255f48 = L.map(\n", - " "map_548e2f939b5f09233d27b4839a255f48",\n", + " var map_eee5a09d841cc8ca005fa0705a148835 = L.map(\n", + " "map_eee5a09d841cc8ca005fa0705a148835",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -6771,13 +6771,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_548e2f939b5f09233d27b4839a255f48);\n", + " L.control.scale().addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_c8ec6c167f9ff19000ba3b71c566b5d6 = L.tileLayer(\n", + " var tile_layer_6f38bbc43b3097d027fa07546a6b2561 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6794,10 +6794,10 @@ " );\n", " \n", " \n", - " tile_layer_c8ec6c167f9ff19000ba3b71c566b5d6.addTo(map_548e2f939b5f09233d27b4839a255f48);\n", + " tile_layer_6f38bbc43b3097d027fa07546a6b2561.addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", " \n", " \n", - " var tile_layer_159df65bbb87b13ff86864ad32216878 = L.tileLayer(\n", + " var tile_layer_c9942b3451d994051b6e9ffd4fa70159 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6814,10 +6814,10 @@ " );\n", " \n", " \n", - " tile_layer_159df65bbb87b13ff86864ad32216878.addTo(map_548e2f939b5f09233d27b4839a255f48);\n", + " tile_layer_c9942b3451d994051b6e9ffd4fa70159.addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", " \n", " \n", - " var tile_layer_437d8d506aa8925a5ffdfac9f868d9f1 = L.tileLayer(\n", + " var tile_layer_c4c9cef504649b924640d6510087a32e = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C1",\n", " {\n", " "minZoom": 0,\n", @@ -6834,10 +6834,10 @@ " );\n", " \n", " \n", - " tile_layer_437d8d506aa8925a5ffdfac9f868d9f1.addTo(map_548e2f939b5f09233d27b4839a255f48);\n", + " tile_layer_c4c9cef504649b924640d6510087a32e.addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", " \n", " \n", - " var tile_layer_075e446d51c49516ae85154e0c178eb2 = L.tileLayer(\n", + " var tile_layer_50ff37e322b04c081a3f59d959df4df3 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vg-greenfield/items/DOW_Greenfield_VG_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6854,40 +6854,40 @@ " );\n", " \n", " \n", - " tile_layer_075e446d51c49516ae85154e0c178eb2.addTo(map_548e2f939b5f09233d27b4839a255f48);\n", + " tile_layer_50ff37e322b04c081a3f59d959df4df3.addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", " \n", " \n", - " var side_by_side_layers_0a1c04c753a7837e1c3d6098cbad2d8c = L.control.sideBySide(\n", - " tile_layer_437d8d506aa8925a5ffdfac9f868d9f1, tile_layer_075e446d51c49516ae85154e0c178eb2\n", - " ).addTo(map_548e2f939b5f09233d27b4839a255f48);\n", + " var side_by_side_layers_9a08f9802a569f7833a8bab96f67baa8 = L.control.sideBySide(\n", + " tile_layer_c4c9cef504649b924640d6510087a32e, tile_layer_50ff37e322b04c081a3f59d959df4df3\n", + " ).addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", " \n", " \n", - " var layer_control_2167580b51c1c0ca7e85788eedc43087_layers = {\n", + " var layer_control_170985d587614d7d6015b868cd0c6be0_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_c8ec6c167f9ff19000ba3b71c566b5d6,\n", + " "ESRI Satellite" : tile_layer_6f38bbc43b3097d027fa07546a6b2561,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_159df65bbb87b13ff86864ad32216878,\n", - " "DOW7 Correlation Coefficient" : tile_layer_437d8d506aa8925a5ffdfac9f868d9f1,\n", - " "DOW7 Velocity" : tile_layer_075e446d51c49516ae85154e0c178eb2,\n", + " "Place Labels" : tile_layer_c9942b3451d994051b6e9ffd4fa70159,\n", + " "DOW7 Correlation Coefficient" : tile_layer_c4c9cef504649b924640d6510087a32e,\n", + " "DOW7 Velocity" : tile_layer_50ff37e322b04c081a3f59d959df4df3,\n", " },\n", " };\n", - " let layer_control_2167580b51c1c0ca7e85788eedc43087 = L.control.layers(\n", - " layer_control_2167580b51c1c0ca7e85788eedc43087_layers.base_layers,\n", - " layer_control_2167580b51c1c0ca7e85788eedc43087_layers.overlays,\n", + " let layer_control_170985d587614d7d6015b868cd0c6be0 = L.control.layers(\n", + " layer_control_170985d587614d7d6015b868cd0c6be0_layers.base_layers,\n", + " layer_control_170985d587614d7d6015b868cd0c6be0_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_548e2f939b5f09233d27b4839a255f48);\n", + " ).addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 19, @@ -7962,7 +7962,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_02c522f4f0f2595741bebcb00ea1091b {\n", + " #map_2293224d2e1a75deeffdd1c7251c6d4a {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -8006,13 +8006,13 @@ " transform: translateX(-50%);\n", " z-index: 1000;\n", " background: white;\n", - " padding: 15px 20px 40px 20px;\n", + " padding: 15px 20px 10px 20px;\n", " border-radius: 4px;\n", " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", " ">\n", " <div style="\n", " position: relative;\n", - " width: 300px;\n", + " width: 450px;\n", " height: 15px;\n", " background: linear-gradient(to right, rgba(0, 0, 128, 1) 0.0%, rgba(0, 14, 109, 1) 1.0101010101010102%, rgba(0, 36, 80, 1) 2.0202020202020203%, rgba(0, 51, 62, 1) 3.0303030303030303%, rgba(0, 72, 33, 1) 4.040404040404041%, rgba(0, 87, 15, 1) 5.05050505050505%, rgba(0, 81, 38, 1) 6.0606060606060606%, rgba(0, 61, 88, 1) 7.07070707070707%, rgba(0, 47, 121, 1) 8.080808080808081%, rgba(0, 27, 171, 1) 9.090909090909092%, rgba(0, 13, 205, 1) 10.1010101010101%, rgba(0, 14, 255, 1) 11.11111111111111%, rgba(0, 56, 255, 1) 12.121212121212121%, rgba(0, 84, 255, 1) 13.131313131313133%, rgba(0, 127, 255, 1) 14.14141414141414%, rgba(0, 155, 255, 1) 15.151515151515152%, rgba(0, 192, 255, 1) 16.161616161616163%, rgba(0, 202, 255, 1) 17.17171717171717%, rgba(0, 215, 255, 1) 18.181818181818183%, rgba(0, 228, 255, 1) 19.19191919191919%, rgba(0, 237, 255, 1) 20.2020202020202%, rgba(0, 250, 241, 1) 21.21212121212121%, rgba(0, 254, 228, 1) 22.22222222222222%, rgba(0, 253, 209, 1) 23.232323232323232%, rgba(0, 251, 189, 1) 24.242424242424242%, rgba(0, 250, 176, 1) 25.252525252525253%, rgba(0, 250, 156, 1) 26.262626262626267%, rgba(0, 250, 135, 1) 27.27272727272727%, rgba(0, 251, 104, 1) 28.28282828282828%, rgba(0, 252, 83, 1) 29.292929292929294%, rgba(0, 253, 52, 1) 30.303030303030305%, rgba(6, 254, 20, 1) 31.313131313131315%, rgba(19, 251, 0, 1) 32.323232323232325%, rgba(38, 239, 0, 1) 33.33333333333333%, rgba(50, 232, 0, 1) 34.34343434343434%, rgba(70, 221, 0, 1) 35.35353535353536%, rgba(89, 209, 0, 1) 36.36363636363637%, rgba(101, 209, 0, 1) 37.37373737373738%, rgba(107, 219, 0, 1) 38.38383838383838%, rgba(111, 225, 0, 1) 39.39393939393939%, rgba(117, 235, 0, 1) 40.4040404040404%, rgba(123, 245, 0, 1) 41.41414141414141%, rgba(127, 251, 7, 1) 42.42424242424242%, rgba(141, 255, 19, 1) 43.43434343434344%, rgba(150, 255, 27, 1) 44.44444444444444%, rgba(164, 255, 39, 1) 45.45454545454545%, rgba(173, 255, 47, 1) 46.464646464646464%, rgba(186, 255, 59, 1) 47.474747474747474%, rgba(200, 255, 47, 1) 48.484848484848484%, rgba(209, 255, 39, 1) 49.494949494949495%, rgba(223, 255, 27, 1) 50.505050505050505%, rgba(232, 255, 19, 1) 51.515151515151516%, rgba(245, 252, 7, 1) 52.52525252525253%, rgba(255, 245, 0, 1) 53.535353535353536%, rgba(255, 240, 0, 1) 54.54545454545454%, rgba(255, 232, 0, 1) 55.55555555555556%, rgba(255, 227, 0, 1) 56.56565656565656%, rgba(255, 220, 0, 1) 57.57575757575758%, rgba(255, 215, 1, 1) 58.58585858585859%, rgba(255, 208, 4, 1) 59.59595959595959%, rgba(255, 200, 7, 1) 60.60606060606061%, rgba(255, 195, 9, 1) 61.61616161616161%, rgba(255, 188, 12, 1) 62.62626262626263%, rgba(255, 177, 13, 1) 63.63636363636363%, rgba(255, 153, 10, 1) 64.64646464646465%, rgba(255, 128, 7, 1) 65.65656565656566%, rgba(255, 112, 5, 1) 66.66666666666666%, rgba(255, 87, 2, 1) 67.67676767676768%, rgba(255, 71, 0, 1) 68.68686868686868%, rgba(255, 57, 0, 1) 69.6969696969697%, rgba(255, 42, 0, 1) 70.70707070707071%, rgba(255, 33, 0, 1) 71.71717171717171%, rgba(255, 19, 0, 1) 72.72727272727273%, rgba(255, 9, 0, 1) 73.73737373737373%, rgba(255, 0, 53, 1) 74.74747474747475%, rgba(255, 0, 88, 1) 75.75757575757575%, rgba(255, 0, 141, 1) 76.76767676767676%, rgba(255, 0, 194, 1) 77.77777777777779%, rgba(255, 0, 230, 1) 78.78787878787878%, rgba(241, 6, 255, 1) 79.7979797979798%, rgba(227, 13, 255, 1) 80.8080808080808%, rgba(206, 24, 255, 1) 81.81818181818183%, rgba(186, 34, 255, 1) 82.82828282828282%, rgba(172, 41, 255, 1) 83.83838383838383%, rgba(164, 56, 252, 1) 84.84848484848484%, rgba(176, 68, 250, 1) 85.85858585858585%, rgba(194, 86, 246, 1) 86.86868686868688%, rgba(205, 97, 244, 1) 87.87878787878788%, rgba(223, 115, 240, 1) 88.88888888888889%, rgba(236, 132, 238, 1) 89.8989898989899%, rgba(237, 141, 240, 1) 90.9090909090909%, rgba(239, 155, 241, 1) 91.91919191919192%, rgba(241, 164, 243, 1) 92.92929292929293%, rgba(243, 178, 244, 1) 93.93939393939394%, rgba(245, 192, 246, 1) 94.94949494949495%, rgba(246, 201, 247, 1) 95.95959595959596%, rgba(249, 215, 249, 1) 96.96969696969697%, rgba(250, 224, 250, 1) 97.97979797979798%, rgba(252, 238, 252, 1) 98.98989898989899%, rgba(254, 247, 254, 1) 100.0%);\n", " border: 1px solid black;\n", @@ -8138,7 +8138,7 @@ " top: 10px;\n", " font-size: 11px;\n", " white-space: nowrap;\n", - " ">74.50</div>\n", + " ">74</div>\n", " \n", " <div style="\n", " position: absolute;\n", @@ -8156,7 +8156,7 @@ " top: 10px;\n", " font-size: 11px;\n", " white-space: nowrap;\n", - " ">113.50</div>\n", + " ">114</div>\n", " \n", " <div style="\n", " position: absolute;\n", @@ -8174,7 +8174,7 @@ " top: 10px;\n", " font-size: 11px;\n", " white-space: nowrap;\n", - " ">152.50</div>\n", + " ">152</div>\n", " \n", " <div style="\n", " position: absolute;\n", @@ -8192,7 +8192,7 @@ " top: 10px;\n", " font-size: 11px;\n", " white-space: nowrap;\n", - " ">191.50</div>\n", + " ">192</div>\n", " \n", " <div style="\n", " position: absolute;\n", @@ -8210,7 +8210,7 @@ " top: 10px;\n", " font-size: 11px;\n", " white-space: nowrap;\n", - " ">230.50</div>\n", + " ">230</div>\n", " \n", " <div style="\n", " position: absolute;\n", @@ -8245,14 +8245,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_02c522f4f0f2595741bebcb00ea1091b" ></div>\n", + " <div class="folium-map" id="map_2293224d2e1a75deeffdd1c7251c6d4a" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_02c522f4f0f2595741bebcb00ea1091b = L.map(\n", - " "map_02c522f4f0f2595741bebcb00ea1091b",\n", + " var map_2293224d2e1a75deeffdd1c7251c6d4a = L.map(\n", + " "map_2293224d2e1a75deeffdd1c7251c6d4a",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -8264,13 +8264,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", + " L.control.scale().addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_68604115c70fc0b6e9782498f37ea1e0 = L.tileLayer(\n", + " var tile_layer_c87318391be29b066e74776bdf2cbacf = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -8287,10 +8287,10 @@ " );\n", " \n", " \n", - " tile_layer_68604115c70fc0b6e9782498f37ea1e0.addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", + " tile_layer_c87318391be29b066e74776bdf2cbacf.addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", " \n", " \n", - " var tile_layer_05be57d55a1456146ddb308b7af1aed2 = L.tileLayer(\n", + " var tile_layer_1160831696ed58c8f1ae102dcab5296e = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -8307,10 +8307,10 @@ " );\n", " \n", " \n", - " tile_layer_05be57d55a1456146ddb308b7af1aed2.addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", + " tile_layer_1160831696ed58c8f1ae102dcab5296e.addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", " \n", " \n", - " var tile_layer_86ecf4d82e22868524c4b5857aaed000 = L.tileLayer(\n", + " var tile_layer_6191f09adfeae6d9b0d5e2ac5caaa59f = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=gist_ncar\\u0026rescale=55%2C250",\n", " {\n", " "minZoom": 0,\n", @@ -8327,34 +8327,34 @@ " );\n", " \n", " \n", - " tile_layer_86ecf4d82e22868524c4b5857aaed000.addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", + " tile_layer_6191f09adfeae6d9b0d5e2ac5caaa59f.addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", " \n", " \n", - " var layer_control_a3503b775bc65474a745d3f27edc46d9_layers = {\n", + " var layer_control_c98117e4c837a0d38324298896596535_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_68604115c70fc0b6e9782498f37ea1e0,\n", + " "ESRI Satellite" : tile_layer_c87318391be29b066e74776bdf2cbacf,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_05be57d55a1456146ddb308b7af1aed2,\n", - " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_86ecf4d82e22868524c4b5857aaed000,\n", + " "Place Labels" : tile_layer_1160831696ed58c8f1ae102dcab5296e,\n", + " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_6191f09adfeae6d9b0d5e2ac5caaa59f,\n", " },\n", " };\n", - " let layer_control_a3503b775bc65474a745d3f27edc46d9 = L.control.layers(\n", - " layer_control_a3503b775bc65474a745d3f27edc46d9_layers.base_layers,\n", - " layer_control_a3503b775bc65474a745d3f27edc46d9_layers.overlays,\n", + " let layer_control_c98117e4c837a0d38324298896596535 = L.control.layers(\n", + " layer_control_c98117e4c837a0d38324298896596535_layers.base_layers,\n", + " layer_control_c98117e4c837a0d38324298896596535_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_02c522f4f0f2595741bebcb00ea1091b);\n", + " ).addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 22, @@ -10449,7 +10449,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_3d992de5d3a71c9b5e5466f6840ccbf4 {\n", + " #map_4601109ad653d82c51b07afa3e8e72c4 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -10556,14 +10556,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_3d992de5d3a71c9b5e5466f6840ccbf4" ></div>\n", + " <div class="folium-map" id="map_4601109ad653d82c51b07afa3e8e72c4" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_3d992de5d3a71c9b5e5466f6840ccbf4 = L.map(\n", - " "map_3d992de5d3a71c9b5e5466f6840ccbf4",\n", + " var map_4601109ad653d82c51b07afa3e8e72c4 = L.map(\n", + " "map_4601109ad653d82c51b07afa3e8e72c4",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -10575,13 +10575,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", + " L.control.scale().addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_9982e9e4eddaf0e0ddc6a16fe83682a3 = L.tileLayer(\n", + " var tile_layer_0456a560807a26ffe51947fec3a212b1 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -10598,10 +10598,10 @@ " );\n", " \n", " \n", - " tile_layer_9982e9e4eddaf0e0ddc6a16fe83682a3.addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", + " tile_layer_0456a560807a26ffe51947fec3a212b1.addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", " \n", " \n", - " var tile_layer_2e4eec11c384bf4e2ba724a99f9deba1 = L.tileLayer(\n", + " var tile_layer_b781fd3d32e43e0b6641e69af00319e8 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=3\\u0026bidx=2\\u0026bidx=1\\u0026rescale=0%2C2500\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -10618,10 +10618,10 @@ " );\n", " \n", " \n", - " tile_layer_2e4eec11c384bf4e2ba724a99f9deba1.addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", + " tile_layer_b781fd3d32e43e0b6641e69af00319e8.addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", " \n", " \n", - " var tile_layer_075a803315e4e0eeb407c38936e02ae6 = L.tileLayer(\n", + " var tile_layer_7c324a39a1463c83c7abc844d1e228cb = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=1\\u0026bidx=2\\u0026bidx=3\\u0026rescale=0%2C255\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -10638,39 +10638,39 @@ " );\n", " \n", " \n", - " tile_layer_075a803315e4e0eeb407c38936e02ae6.addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", + " tile_layer_7c324a39a1463c83c7abc844d1e228cb.addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", " \n", " \n", - " var side_by_side_layers_93c6eb19e4b441080f5cec2381c81502 = L.control.sideBySide(\n", - " tile_layer_2e4eec11c384bf4e2ba724a99f9deba1, tile_layer_075a803315e4e0eeb407c38936e02ae6\n", - " ).addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", + " var side_by_side_layers_7bbf30a7017ca0845fe39e8985a1803d = L.control.sideBySide(\n", + " tile_layer_b781fd3d32e43e0b6641e69af00319e8, tile_layer_7c324a39a1463c83c7abc844d1e228cb\n", + " ).addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", " \n", " \n", - " var layer_control_b1de6b7341542953fd65a39a41b3b171_layers = {\n", + " var layer_control_1b9a06db3c7544d5022922494b24a28b_layers = {\n", " base_layers : {\n", - " "CartoDB Positron" : tile_layer_9982e9e4eddaf0e0ddc6a16fe83682a3,\n", + " "CartoDB Positron" : tile_layer_0456a560807a26ffe51947fec3a212b1,\n", " },\n", " overlays : {\n", - " "PlanetScope Pre-Tornado" : tile_layer_2e4eec11c384bf4e2ba724a99f9deba1,\n", - " "PlanetScope Post-Tornado" : tile_layer_075a803315e4e0eeb407c38936e02ae6,\n", + " "PlanetScope Pre-Tornado" : tile_layer_b781fd3d32e43e0b6641e69af00319e8,\n", + " "PlanetScope Post-Tornado" : tile_layer_7c324a39a1463c83c7abc844d1e228cb,\n", " },\n", " };\n", - " let layer_control_b1de6b7341542953fd65a39a41b3b171 = L.control.layers(\n", - " layer_control_b1de6b7341542953fd65a39a41b3b171_layers.base_layers,\n", - " layer_control_b1de6b7341542953fd65a39a41b3b171_layers.overlays,\n", + " let layer_control_1b9a06db3c7544d5022922494b24a28b = L.control.layers(\n", + " layer_control_1b9a06db3c7544d5022922494b24a28b_layers.base_layers,\n", + " layer_control_1b9a06db3c7544d5022922494b24a28b_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_3d992de5d3a71c9b5e5466f6840ccbf4);\n", + " ).addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 25, From 9bb1875b6d8090b653ec190a7cbf2fbc16d8a44d Mon Sep 17 00:00:00 2001 From: Kyle Lesinger Date: Fri, 22 Aug 2025 08:54:59 -0500 Subject: [PATCH 23/28] fix title --- user-guide/notebooks/stories/plotutils.py | 90 ++-- .../stories/tornadoes_2024_notebook.ipynb | 468 +++++++++--------- 2 files changed, 296 insertions(+), 262 deletions(-) diff --git a/user-guide/notebooks/stories/plotutils.py b/user-guide/notebooks/stories/plotutils.py index 7c6a962f..efdfc355 100644 --- a/user-guide/notebooks/stories/plotutils.py +++ b/user-guide/notebooks/stories/plotutils.py @@ -447,6 +447,49 @@ def add_basemap_to_map(m: folium.Map, basemap_style: str) -> None: raise RuntimeError(f"Failed to add basemap '{basemap_style}': {str(e)}") +def add_map_title(m: folium.Map, title_text: str, top_position: int = 10) -> None: + """ + Add a centered title to a Folium map. + + Parameters + ---------- + m : folium.Map + The Folium map object to add the title to + title_text : str + The text to display in the title + top_position : int, optional + Distance from top of map in pixels (default 10) + + Returns + ------- + None + Modifies the map in place by adding the title HTML + """ + if not title_text: + return + + title_html = f""" +
    + {title_text} +
    + """ + m.get_root().html.add_child(Element(title_html)) + + def add_custom_html_legend(m: folium.Map, custom_colors: list, colorbar_caption: str, position: str = "top", top_offset: int = 50) -> None: """ @@ -769,6 +812,11 @@ def plot_folium_from_VEDA_STAC( # Add Layer Control folium.LayerControl().add_to(m) + # Determine if title exists and its position + has_title = date is not None + title_bottom = 45 if has_title else 0 # Title box extends to about 45px from top (10px top + 18px font + 16px padding + border) + colorbar_top = title_bottom + 15 if has_title else 50 # Add 15px spacing after title, or default 50px + # Handle colorbar/legend with clear, mutually exclusive logic if custom_colors: # For categorical data, ONLY use HTML legend (no LinearColormap) @@ -839,7 +887,7 @@ def plot_folium_from_VEDA_STAC( colorbar_html = f"""
    - {layer_name} β€” {formatted_date} -
    - """ - m.get_root().html.add_child(Element(title_html)) + title_text = f"{layer_name} β€” {formatted_date}" + add_map_title(m, title_text, top_position=10) return m @@ -1064,24 +1097,7 @@ def plot_folium_SidebySide_layer_from_VEDA_STAC( folium.LayerControl().add_to(m) # Add title to the map - title_html = f""" -
    - {title} -
    - """ - m.get_root().html.add_child(Element(title_html)) + add_map_title(m, title, top_position=10) # Helper function to generate HTML colorbar def generate_html_colorbar(colormap_name, vmin, vmax, units=None): diff --git a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb index 839f38f3..c5199f53 100644 --- a/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb +++ b/user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb @@ -1159,7 +1159,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_d82c11273fa90b64da2e339b293e2620 {\n", + " #map_88ab67686f987ba29d5aec4bec45d677 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -1196,29 +1196,32 @@ "<body>\n", " \n", " \n", - " <div style="\n", - " position: fixed;\n", - " top: 10px;\n", - " left: 50%;\n", - " transform: translateX(-50%);\n", - " z-index: 1000;\n", - " font-size: 18px;\n", - " font-weight: bold;\n", - " background: rgba(255,255,255,0.8);\n", - " padding: 4px 8px;\n", - " border-radius: 4px;\n", - " ">\n", - " Tornado Tracks β€” (March-May 2024)\n", - " </div>\n", - " \n", + " <div style="\n", + " position: fixed;\n", + " top: 10px;\n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " font-size: 18px;\n", + " font-weight: bold;\n", + " background: rgba(255,255,255,0.8);\n", + " padding: 8px 20px;\n", + " min-width: 750px;\n", + " text-align: center;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n", + " ">\n", + " Tornado Tracks β€” (March-May 2024)\n", + " </div>\n", " \n", - " <div class="folium-map" id="map_d82c11273fa90b64da2e339b293e2620" ></div>\n", + " \n", + " <div class="folium-map" id="map_88ab67686f987ba29d5aec4bec45d677" ></div>\n", " \n", " \n", " <div style="\n", " \n", " position: fixed; \n", - " top: 50px; \n", + " top: 60px; \n", " left: 50%;\n", " transform: translateX(-50%);\n", " \n", @@ -1313,8 +1316,8 @@ "<script>\n", " \n", " \n", - " var map_d82c11273fa90b64da2e339b293e2620 = L.map(\n", - " "map_d82c11273fa90b64da2e339b293e2620",\n", + " var map_88ab67686f987ba29d5aec4bec45d677 = L.map(\n", + " "map_88ab67686f987ba29d5aec4bec45d677",\n", " {\n", " center: [41.31, -94.46],\n", " crs: L.CRS.EPSG3857,\n", @@ -1326,13 +1329,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_d82c11273fa90b64da2e339b293e2620);\n", + " L.control.scale().addTo(map_88ab67686f987ba29d5aec4bec45d677);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_df9bd856f0d3315960c8f07a5713c020 = L.tileLayer(\n", + " var tile_layer_94526126aebad9703353d7f12fff8274 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1349,10 +1352,10 @@ " );\n", " \n", " \n", - " tile_layer_df9bd856f0d3315960c8f07a5713c020.addTo(map_d82c11273fa90b64da2e339b293e2620);\n", + " tile_layer_94526126aebad9703353d7f12fff8274.addTo(map_88ab67686f987ba29d5aec4bec45d677);\n", " \n", " \n", - " var tile_layer_adc00621d526ce24ca1bb3287bef0e14 = L.tileLayer(\n", + " var tile_layer_e64e79b47fbf6699fdcfa6104889fec9 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -1369,10 +1372,10 @@ " );\n", " \n", " \n", - " tile_layer_adc00621d526ce24ca1bb3287bef0e14.addTo(map_d82c11273fa90b64da2e339b293e2620);\n", + " tile_layer_e64e79b47fbf6699fdcfa6104889fec9.addTo(map_88ab67686f987ba29d5aec4bec45d677);\n", " \n", " \n", - " var tile_layer_32e85d71de2418b3b827ce6831a78f36 = L.tileLayer(\n", + " var tile_layer_701bb948212fe6dae34fc1400cb83b40 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-paths/items/Tornado_Tracks_cog_2024-05-31/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -1389,34 +1392,34 @@ " );\n", " \n", " \n", - " tile_layer_32e85d71de2418b3b827ce6831a78f36.addTo(map_d82c11273fa90b64da2e339b293e2620);\n", + " tile_layer_701bb948212fe6dae34fc1400cb83b40.addTo(map_88ab67686f987ba29d5aec4bec45d677);\n", " \n", " \n", - " var layer_control_dcef0b3a3689b54ea483a6a006bd3f6a_layers = {\n", + " var layer_control_6ab04327b4f374b64b922fe056049941_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_df9bd856f0d3315960c8f07a5713c020,\n", + " "ESRI Satellite" : tile_layer_94526126aebad9703353d7f12fff8274,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_adc00621d526ce24ca1bb3287bef0e14,\n", - " "Tornado Tracks (March-May 2024)" : tile_layer_32e85d71de2418b3b827ce6831a78f36,\n", + " "Place Labels" : tile_layer_e64e79b47fbf6699fdcfa6104889fec9,\n", + " "Tornado Tracks (March-May 2024)" : tile_layer_701bb948212fe6dae34fc1400cb83b40,\n", " },\n", " };\n", - " let layer_control_dcef0b3a3689b54ea483a6a006bd3f6a = L.control.layers(\n", - " layer_control_dcef0b3a3689b54ea483a6a006bd3f6a_layers.base_layers,\n", - " layer_control_dcef0b3a3689b54ea483a6a006bd3f6a_layers.overlays,\n", + " let layer_control_6ab04327b4f374b64b922fe056049941 = L.control.layers(\n", + " layer_control_6ab04327b4f374b64b922fe056049941_layers.base_layers,\n", + " layer_control_6ab04327b4f374b64b922fe056049941_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_d82c11273fa90b64da2e339b293e2620);\n", + " ).addTo(map_88ab67686f987ba29d5aec4bec45d677);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 7, @@ -2468,7 +2471,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_63778cba0f083ac7407596180d1765e4 {\n", + " #map_7d4a6ef293a33494319ad27f7f389f55 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -2505,29 +2508,32 @@ "<body>\n", " \n", " \n", - " <div style="\n", - " position: fixed;\n", - " top: 10px;\n", - " left: 50%;\n", - " transform: translateX(-50%);\n", - " z-index: 1000;\n", - " font-size: 18px;\n", - " font-weight: bold;\n", - " background: rgba(255,255,255,0.8);\n", - " padding: 4px 8px;\n", - " border-radius: 4px;\n", - " ">\n", - " Tornado Tracks [Polygons] β€” (March-May 2024)\n", - " </div>\n", - " \n", + " <div style="\n", + " position: fixed;\n", + " top: 10px;\n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " font-size: 18px;\n", + " font-weight: bold;\n", + " background: rgba(255,255,255,0.8);\n", + " padding: 8px 20px;\n", + " min-width: 750px;\n", + " text-align: center;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n", + " ">\n", + " Tornado Tracks [Polygons] β€” (March-May 2024)\n", + " </div>\n", + " \n", " \n", - " <div class="folium-map" id="map_63778cba0f083ac7407596180d1765e4" ></div>\n", + " <div class="folium-map" id="map_7d4a6ef293a33494319ad27f7f389f55" ></div>\n", " \n", " \n", " <div style="\n", " \n", " position: fixed; \n", - " top: 50px; \n", + " top: 60px; \n", " left: 50%;\n", " transform: translateX(-50%);\n", " \n", @@ -2622,8 +2628,8 @@ "<script>\n", " \n", " \n", - " var map_63778cba0f083ac7407596180d1765e4 = L.map(\n", - " "map_63778cba0f083ac7407596180d1765e4",\n", + " var map_7d4a6ef293a33494319ad27f7f389f55 = L.map(\n", + " "map_7d4a6ef293a33494319ad27f7f389f55",\n", " {\n", " center: [40.3, -84.05],\n", " crs: L.CRS.EPSG3857,\n", @@ -2635,13 +2641,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_63778cba0f083ac7407596180d1765e4);\n", + " L.control.scale().addTo(map_7d4a6ef293a33494319ad27f7f389f55);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_1a6623df1343edabb6a504cd2678611d = L.tileLayer(\n", + " var tile_layer_e805ef4d45abe832906cf3737afab99a = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2658,10 +2664,10 @@ " );\n", " \n", " \n", - " tile_layer_1a6623df1343edabb6a504cd2678611d.addTo(map_63778cba0f083ac7407596180d1765e4);\n", + " tile_layer_e805ef4d45abe832906cf3737afab99a.addTo(map_7d4a6ef293a33494319ad27f7f389f55);\n", " \n", " \n", - " var tile_layer_9be3254be6a851f9d9ffca278229631b = L.tileLayer(\n", + " var tile_layer_b317bfb0fdf974ebf4f484fa40dafe6e = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -2678,10 +2684,10 @@ " );\n", " \n", " \n", - " tile_layer_9be3254be6a851f9d9ffca278229631b.addTo(map_63778cba0f083ac7407596180d1765e4);\n", + " tile_layer_b317bfb0fdf974ebf4f484fa40dafe6e.addTo(map_7d4a6ef293a33494319ad27f7f389f55);\n", " \n", " \n", - " var tile_layer_f2fb7ef946abe8a7c45a3c0f65d5069b = L.tileLayer(\n", + " var tile_layer_b6fc6944066afadafdedab1c70e044ec = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-polygons/items/Tornado_Polygons_2024-05-31_cog/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026colormap_name=tornado_ef_scale",\n", " {\n", " "minZoom": 0,\n", @@ -2698,34 +2704,34 @@ " );\n", " \n", " \n", - " tile_layer_f2fb7ef946abe8a7c45a3c0f65d5069b.addTo(map_63778cba0f083ac7407596180d1765e4);\n", + " tile_layer_b6fc6944066afadafdedab1c70e044ec.addTo(map_7d4a6ef293a33494319ad27f7f389f55);\n", " \n", " \n", - " var layer_control_d0b94ce4039e78433d0b3842274c6b56_layers = {\n", + " var layer_control_dd1b24fa715cba76ff75211740381cc4_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_1a6623df1343edabb6a504cd2678611d,\n", + " "ESRI Satellite" : tile_layer_e805ef4d45abe832906cf3737afab99a,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_9be3254be6a851f9d9ffca278229631b,\n", - " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_f2fb7ef946abe8a7c45a3c0f65d5069b,\n", + " "Place Labels" : tile_layer_b317bfb0fdf974ebf4f484fa40dafe6e,\n", + " "Tornado Tracks [Polygons] (March-May 2024)" : tile_layer_b6fc6944066afadafdedab1c70e044ec,\n", " },\n", " };\n", - " let layer_control_d0b94ce4039e78433d0b3842274c6b56 = L.control.layers(\n", - " layer_control_d0b94ce4039e78433d0b3842274c6b56_layers.base_layers,\n", - " layer_control_d0b94ce4039e78433d0b3842274c6b56_layers.overlays,\n", + " let layer_control_dd1b24fa715cba76ff75211740381cc4 = L.control.layers(\n", + " layer_control_dd1b24fa715cba76ff75211740381cc4_layers.base_layers,\n", + " layer_control_dd1b24fa715cba76ff75211740381cc4_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_63778cba0f083ac7407596180d1765e4);\n", + " ).addTo(map_7d4a6ef293a33494319ad27f7f389f55);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 10, @@ -3805,7 +3811,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_a98c871c8d741fa6379fcbb0d30062a8 {\n", + " #map_ede44c359e119fdc8dea8fe1dd642565 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -3844,7 +3850,7 @@ " \n", " <div style="\n", " position: fixed;\n", - " top: 50px;\n", + " top: 60px;\n", " left: 50%;\n", " transform: translateX(-50%);\n", " z-index: 1000;\n", @@ -4072,30 +4078,33 @@ " </div>\n", " \n", " \n", - " <div style="\n", - " position: fixed;\n", - " top: 10px;\n", - " left: 50%;\n", - " transform: translateX(-50%);\n", - " z-index: 1000;\n", - " font-size: 18px;\n", - " font-weight: bold;\n", - " background: rgba(255,255,255,0.8);\n", - " padding: 4px 8px;\n", - " border-radius: 4px;\n", - " ">\n", - " Black Marble Nightlights (Indian Lake, OH) β€” March 14, 2024\n", - " </div>\n", - " \n", + " <div style="\n", + " position: fixed;\n", + " top: 10px;\n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " font-size: 18px;\n", + " font-weight: bold;\n", + " background: rgba(255,255,255,0.8);\n", + " padding: 8px 20px;\n", + " min-width: 750px;\n", + " text-align: center;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n", + " ">\n", + " Black Marble Nightlights (Indian Lake, OH) β€” March 14, 2024\n", + " </div>\n", + " \n", " \n", - " <div class="folium-map" id="map_a98c871c8d741fa6379fcbb0d30062a8" ></div>\n", + " <div class="folium-map" id="map_ede44c359e119fdc8dea8fe1dd642565" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_a98c871c8d741fa6379fcbb0d30062a8 = L.map(\n", - " "map_a98c871c8d741fa6379fcbb0d30062a8",\n", + " var map_ede44c359e119fdc8dea8fe1dd642565 = L.map(\n", + " "map_ede44c359e119fdc8dea8fe1dd642565",\n", " {\n", " center: [40.496, -83.884],\n", " crs: L.CRS.EPSG3857,\n", @@ -4107,13 +4116,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_a98c871c8d741fa6379fcbb0d30062a8);\n", + " L.control.scale().addTo(map_ede44c359e119fdc8dea8fe1dd642565);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_b7730d8f7a5352230a2c1335b664a5ab = L.tileLayer(\n", + " var tile_layer_6401ec4114e5b906b8fef9a4d67f639e = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -4130,10 +4139,10 @@ " );\n", " \n", " \n", - " tile_layer_b7730d8f7a5352230a2c1335b664a5ab.addTo(map_a98c871c8d741fa6379fcbb0d30062a8);\n", + " tile_layer_6401ec4114e5b906b8fef9a4d67f639e.addTo(map_ede44c359e119fdc8dea8fe1dd642565);\n", " \n", " \n", - " var tile_layer_c7ef2f086e9ee77f1555ddf3ddf0d570 = L.tileLayer(\n", + " var tile_layer_77446b90902a0e2376f4c4c443f77514 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/lakeview-nightlights-tornadoes-2024/items/nightlights_LakeviewOH_diff_cog_2024-03-14/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=bwr\\u0026rescale=-150%2C150",\n", " {\n", " "minZoom": 0,\n", @@ -4150,33 +4159,33 @@ " );\n", " \n", " \n", - " tile_layer_c7ef2f086e9ee77f1555ddf3ddf0d570.addTo(map_a98c871c8d741fa6379fcbb0d30062a8);\n", + " tile_layer_77446b90902a0e2376f4c4c443f77514.addTo(map_ede44c359e119fdc8dea8fe1dd642565);\n", " \n", " \n", - " var layer_control_5a47bdf2e6120017de7b582504c26cd2_layers = {\n", + " var layer_control_9c1e4c2e27a85295b22896e870f017eb_layers = {\n", " base_layers : {\n", - " "CartoDB Dark" : tile_layer_b7730d8f7a5352230a2c1335b664a5ab,\n", + " "CartoDB Dark" : tile_layer_6401ec4114e5b906b8fef9a4d67f639e,\n", " },\n", " overlays : {\n", - " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_c7ef2f086e9ee77f1555ddf3ddf0d570,\n", + " "Black Marble Nightlights (Indian Lake, OH)" : tile_layer_77446b90902a0e2376f4c4c443f77514,\n", " },\n", " };\n", - " let layer_control_5a47bdf2e6120017de7b582504c26cd2 = L.control.layers(\n", - " layer_control_5a47bdf2e6120017de7b582504c26cd2_layers.base_layers,\n", - " layer_control_5a47bdf2e6120017de7b582504c26cd2_layers.overlays,\n", + " let layer_control_9c1e4c2e27a85295b22896e870f017eb = L.control.layers(\n", + " layer_control_9c1e4c2e27a85295b22896e870f017eb_layers.base_layers,\n", + " layer_control_9c1e4c2e27a85295b22896e870f017eb_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_a98c871c8d741fa6379fcbb0d30062a8);\n", + " ).addTo(map_ede44c359e119fdc8dea8fe1dd642565);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 13, @@ -6194,7 +6203,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_4a4c3b1e64fee402a7568c02934eb3f4 {\n", + " #map_4fe948c8257a65b43f8cc0884e2324a3 {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6240,10 +6249,12 @@ " z-index: 1000;\n", " font-size: 18px;\n", " font-weight: bold;\n", - " background: rgba(255,255,255,0.9);\n", - " padding: 8px 12px;\n", + " background: rgba(255,255,255,0.8);\n", + " padding: 8px 20px;\n", + " min-width: 750px;\n", + " text-align: center;\n", " border-radius: 4px;\n", - " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n", " ">\n", " DOW7 Comparison β€” Harlan, IA β€” April 26, 2024\n", " </div>\n", @@ -6329,14 +6340,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_4a4c3b1e64fee402a7568c02934eb3f4" ></div>\n", + " <div class="folium-map" id="map_4fe948c8257a65b43f8cc0884e2324a3" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_4a4c3b1e64fee402a7568c02934eb3f4 = L.map(\n", - " "map_4a4c3b1e64fee402a7568c02934eb3f4",\n", + " var map_4fe948c8257a65b43f8cc0884e2324a3 = L.map(\n", + " "map_4fe948c8257a65b43f8cc0884e2324a3",\n", " {\n", " center: [41.668, -95.372],\n", " crs: L.CRS.EPSG3857,\n", @@ -6348,13 +6359,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", + " L.control.scale().addTo(map_4fe948c8257a65b43f8cc0884e2324a3);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_682838f7a01c4f72ce563928d72a2426 = L.tileLayer(\n", + " var tile_layer_dfd1ece013d0a1f04d1130b5850af80e = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6371,10 +6382,10 @@ " );\n", " \n", " \n", - " tile_layer_682838f7a01c4f72ce563928d72a2426.addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", + " tile_layer_dfd1ece013d0a1f04d1130b5850af80e.addTo(map_4fe948c8257a65b43f8cc0884e2324a3);\n", " \n", " \n", - " var tile_layer_0114fe68328f007b15eadeef10b2e405 = L.tileLayer(\n", + " var tile_layer_0b2d22f1310f4dcae5613fe3c19e7cbe = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6391,10 +6402,10 @@ " );\n", " \n", " \n", - " tile_layer_0114fe68328f007b15eadeef10b2e405.addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", + " tile_layer_0b2d22f1310f4dcae5613fe3c19e7cbe.addTo(map_4fe948c8257a65b43f8cc0884e2324a3);\n", " \n", " \n", - " var tile_layer_ebd1efdb2d3ec53f56d6125505bb579e = L.tileLayer(\n", + " var tile_layer_b0a1a48fa1129146eff8840c4fb60453 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-refl-harlan/items/DOW_Harlan_REFL_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=-10%2C50",\n", " {\n", " "minZoom": 0,\n", @@ -6411,10 +6422,10 @@ " );\n", " \n", " \n", - " tile_layer_ebd1efdb2d3ec53f56d6125505bb579e.addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", + " tile_layer_b0a1a48fa1129146eff8840c4fb60453.addTo(map_4fe948c8257a65b43f8cc0884e2324a3);\n", " \n", " \n", - " var tile_layer_9f67367e98cc840a69b5ba0d49b20ece = L.tileLayer(\n", + " var tile_layer_1ad2a601500d6759a42d4347ada1b1b0 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-v-harlan/items/DOW_Harlan_V_cog_v2_2024-04-26/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6431,40 +6442,40 @@ " );\n", " \n", " \n", - " tile_layer_9f67367e98cc840a69b5ba0d49b20ece.addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", + " tile_layer_1ad2a601500d6759a42d4347ada1b1b0.addTo(map_4fe948c8257a65b43f8cc0884e2324a3);\n", " \n", " \n", - " var side_by_side_layers_125dc7610c7866c10141dad0a8900c57 = L.control.sideBySide(\n", - " tile_layer_ebd1efdb2d3ec53f56d6125505bb579e, tile_layer_9f67367e98cc840a69b5ba0d49b20ece\n", - " ).addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", + " var side_by_side_layers_78bb528229cbf6db76b438c53a86a1a5 = L.control.sideBySide(\n", + " tile_layer_b0a1a48fa1129146eff8840c4fb60453, tile_layer_1ad2a601500d6759a42d4347ada1b1b0\n", + " ).addTo(map_4fe948c8257a65b43f8cc0884e2324a3);\n", " \n", " \n", - " var layer_control_85d367bf735a84d083d844848a7fa737_layers = {\n", + " var layer_control_69e541d44eb1701d2e6ef6e89e68bb20_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_682838f7a01c4f72ce563928d72a2426,\n", + " "ESRI Satellite" : tile_layer_dfd1ece013d0a1f04d1130b5850af80e,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_0114fe68328f007b15eadeef10b2e405,\n", - " "DOW7 Reflectivity" : tile_layer_ebd1efdb2d3ec53f56d6125505bb579e,\n", - " "DOW7 Velocity" : tile_layer_9f67367e98cc840a69b5ba0d49b20ece,\n", + " "Place Labels" : tile_layer_0b2d22f1310f4dcae5613fe3c19e7cbe,\n", + " "DOW7 Reflectivity" : tile_layer_b0a1a48fa1129146eff8840c4fb60453,\n", + " "DOW7 Velocity" : tile_layer_1ad2a601500d6759a42d4347ada1b1b0,\n", " },\n", " };\n", - " let layer_control_85d367bf735a84d083d844848a7fa737 = L.control.layers(\n", - " layer_control_85d367bf735a84d083d844848a7fa737_layers.base_layers,\n", - " layer_control_85d367bf735a84d083d844848a7fa737_layers.overlays,\n", + " let layer_control_69e541d44eb1701d2e6ef6e89e68bb20 = L.control.layers(\n", + " layer_control_69e541d44eb1701d2e6ef6e89e68bb20_layers.base_layers,\n", + " layer_control_69e541d44eb1701d2e6ef6e89e68bb20_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_4a4c3b1e64fee402a7568c02934eb3f4);\n", + " ).addTo(map_4fe948c8257a65b43f8cc0884e2324a3);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 17, @@ -6617,7 +6628,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_eee5a09d841cc8ca005fa0705a148835 {\n", + " #map_24881fba1530c7a7b272e33c13cf033d {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -6663,10 +6674,12 @@ " z-index: 1000;\n", " font-size: 18px;\n", " font-weight: bold;\n", - " background: rgba(255,255,255,0.9);\n", - " padding: 8px 12px;\n", + " background: rgba(255,255,255,0.8);\n", + " padding: 8px 20px;\n", + " min-width: 750px;\n", + " text-align: center;\n", " border-radius: 4px;\n", - " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n", " ">\n", " DOW7 Comparison β€” Greenfield, IA β€” May 21, 2024\n", " </div>\n", @@ -6752,14 +6765,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_eee5a09d841cc8ca005fa0705a148835" ></div>\n", + " <div class="folium-map" id="map_24881fba1530c7a7b272e33c13cf033d" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_eee5a09d841cc8ca005fa0705a148835 = L.map(\n", - " "map_eee5a09d841cc8ca005fa0705a148835",\n", + " var map_24881fba1530c7a7b272e33c13cf033d = L.map(\n", + " "map_24881fba1530c7a7b272e33c13cf033d",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -6771,13 +6784,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", + " L.control.scale().addTo(map_24881fba1530c7a7b272e33c13cf033d);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_6f38bbc43b3097d027fa07546a6b2561 = L.tileLayer(\n", + " var tile_layer_7071e56175ad4b5abe745e0413aab8ce = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6794,10 +6807,10 @@ " );\n", " \n", " \n", - " tile_layer_6f38bbc43b3097d027fa07546a6b2561.addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", + " tile_layer_7071e56175ad4b5abe745e0413aab8ce.addTo(map_24881fba1530c7a7b272e33c13cf033d);\n", " \n", " \n", - " var tile_layer_c9942b3451d994051b6e9ffd4fa70159 = L.tileLayer(\n", + " var tile_layer_122074bc8eb65eb613d6e71f1534817d = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -6814,10 +6827,10 @@ " );\n", " \n", " \n", - " tile_layer_c9942b3451d994051b6e9ffd4fa70159.addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", + " tile_layer_122074bc8eb65eb613d6e71f1534817d.addTo(map_24881fba1530c7a7b272e33c13cf033d);\n", " \n", " \n", - " var tile_layer_c4c9cef504649b924640d6510087a32e = L.tileLayer(\n", + " var tile_layer_1a02ad952de248385f50ad8bf254ccfa = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-rhohv-greenfield/items/DOW_Greenfield_RHOHV_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=turbo\\u0026rescale=0%2C1",\n", " {\n", " "minZoom": 0,\n", @@ -6834,10 +6847,10 @@ " );\n", " \n", " \n", - " tile_layer_c4c9cef504649b924640d6510087a32e.addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", + " tile_layer_1a02ad952de248385f50ad8bf254ccfa.addTo(map_24881fba1530c7a7b272e33c13cf033d);\n", " \n", " \n", - " var tile_layer_50ff37e322b04c081a3f59d959df4df3 = L.tileLayer(\n", + " var tile_layer_cfce52b9edd8370e77bf6a4bf72088a8 = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vg-greenfield/items/DOW_Greenfield_VG_cog_v2_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=seismic\\u0026rescale=-75%2C75",\n", " {\n", " "minZoom": 0,\n", @@ -6854,40 +6867,40 @@ " );\n", " \n", " \n", - " tile_layer_50ff37e322b04c081a3f59d959df4df3.addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", + " tile_layer_cfce52b9edd8370e77bf6a4bf72088a8.addTo(map_24881fba1530c7a7b272e33c13cf033d);\n", " \n", " \n", - " var side_by_side_layers_9a08f9802a569f7833a8bab96f67baa8 = L.control.sideBySide(\n", - " tile_layer_c4c9cef504649b924640d6510087a32e, tile_layer_50ff37e322b04c081a3f59d959df4df3\n", - " ).addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", + " var side_by_side_layers_d713cc0307f8d10f5c481c8e68c1d256 = L.control.sideBySide(\n", + " tile_layer_1a02ad952de248385f50ad8bf254ccfa, tile_layer_cfce52b9edd8370e77bf6a4bf72088a8\n", + " ).addTo(map_24881fba1530c7a7b272e33c13cf033d);\n", " \n", " \n", - " var layer_control_170985d587614d7d6015b868cd0c6be0_layers = {\n", + " var layer_control_d79bbf994a76ff7f3d500267ac9b95f1_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_6f38bbc43b3097d027fa07546a6b2561,\n", + " "ESRI Satellite" : tile_layer_7071e56175ad4b5abe745e0413aab8ce,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_c9942b3451d994051b6e9ffd4fa70159,\n", - " "DOW7 Correlation Coefficient" : tile_layer_c4c9cef504649b924640d6510087a32e,\n", - " "DOW7 Velocity" : tile_layer_50ff37e322b04c081a3f59d959df4df3,\n", + " "Place Labels" : tile_layer_122074bc8eb65eb613d6e71f1534817d,\n", + " "DOW7 Correlation Coefficient" : tile_layer_1a02ad952de248385f50ad8bf254ccfa,\n", + " "DOW7 Velocity" : tile_layer_cfce52b9edd8370e77bf6a4bf72088a8,\n", " },\n", " };\n", - " let layer_control_170985d587614d7d6015b868cd0c6be0 = L.control.layers(\n", - " layer_control_170985d587614d7d6015b868cd0c6be0_layers.base_layers,\n", - " layer_control_170985d587614d7d6015b868cd0c6be0_layers.overlays,\n", + " let layer_control_d79bbf994a76ff7f3d500267ac9b95f1 = L.control.layers(\n", + " layer_control_d79bbf994a76ff7f3d500267ac9b95f1_layers.base_layers,\n", + " layer_control_d79bbf994a76ff7f3d500267ac9b95f1_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_eee5a09d841cc8ca005fa0705a148835);\n", + " ).addTo(map_24881fba1530c7a7b272e33c13cf033d);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 19, @@ -7962,7 +7975,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_2293224d2e1a75deeffdd1c7251c6d4a {\n", + " #map_6427ede229e1bbe6c8d3644e30a678af {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -8001,7 +8014,7 @@ " \n", " <div style="\n", " position: fixed;\n", - " top: 50px;\n", + " top: 60px;\n", " left: 50%;\n", " transform: translateX(-50%);\n", " z-index: 1000;\n", @@ -8229,30 +8242,33 @@ " </div>\n", " \n", " \n", - " <div style="\n", - " position: fixed;\n", - " top: 10px;\n", - " left: 50%;\n", - " transform: translateX(-50%);\n", - " z-index: 1000;\n", - " font-size: 18px;\n", - " font-weight: bold;\n", - " background: rgba(255,255,255,0.8);\n", - " padding: 4px 8px;\n", - " border-radius: 4px;\n", - " ">\n", - " DOW7-Derived Maximum Velocity (Greenfield, IA) β€” May 21, 2024\n", - " </div>\n", - " \n", + " <div style="\n", + " position: fixed;\n", + " top: 10px;\n", + " left: 50%;\n", + " transform: translateX(-50%);\n", + " z-index: 1000;\n", + " font-size: 18px;\n", + " font-weight: bold;\n", + " background: rgba(255,255,255,0.8);\n", + " padding: 8px 20px;\n", + " min-width: 750px;\n", + " text-align: center;\n", + " border-radius: 4px;\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n", + " ">\n", + " DOW7-Derived Maximum Velocity (Greenfield, IA) β€” May 21, 2024\n", + " </div>\n", + " \n", " \n", - " <div class="folium-map" id="map_2293224d2e1a75deeffdd1c7251c6d4a" ></div>\n", + " <div class="folium-map" id="map_6427ede229e1bbe6c8d3644e30a678af" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_2293224d2e1a75deeffdd1c7251c6d4a = L.map(\n", - " "map_2293224d2e1a75deeffdd1c7251c6d4a",\n", + " var map_6427ede229e1bbe6c8d3644e30a678af = L.map(\n", + " "map_6427ede229e1bbe6c8d3644e30a678af",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -8264,13 +8280,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", + " L.control.scale().addTo(map_6427ede229e1bbe6c8d3644e30a678af);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_c87318391be29b066e74776bdf2cbacf = L.tileLayer(\n", + " var tile_layer_b4e73fe7c9b143308c30b6160b89e8e5 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -8287,10 +8303,10 @@ " );\n", " \n", " \n", - " tile_layer_c87318391be29b066e74776bdf2cbacf.addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", + " tile_layer_b4e73fe7c9b143308c30b6160b89e8e5.addTo(map_6427ede229e1bbe6c8d3644e30a678af);\n", " \n", " \n", - " var tile_layer_1160831696ed58c8f1ae102dcab5296e = L.tileLayer(\n", + " var tile_layer_86cddcd909d1c67eb7508203ab16efd7 = L.tileLayer(\n", " "https://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer/tile/{z}/{y}/{x}",\n", " {\n", " "minZoom": 0,\n", @@ -8307,10 +8323,10 @@ " );\n", " \n", " \n", - " tile_layer_1160831696ed58c8f1ae102dcab5296e.addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", + " tile_layer_86cddcd909d1c67eb7508203ab16efd7.addTo(map_6427ede229e1bbe6c8d3644e30a678af);\n", " \n", " \n", - " var tile_layer_6191f09adfeae6d9b0d5e2ac5caaa59f = L.tileLayer(\n", + " var tile_layer_98dc3ee44d17f0ef16b507b178088a6b = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/tornadoes-2024-dow-vmax-greenfield/items/DOW_Vmax_Greenfield_mph_cog_2024-05-21/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026color_formula=gamma+r+1.05\\u0026colormap_name=gist_ncar\\u0026rescale=55%2C250",\n", " {\n", " "minZoom": 0,\n", @@ -8327,34 +8343,34 @@ " );\n", " \n", " \n", - " tile_layer_6191f09adfeae6d9b0d5e2ac5caaa59f.addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", + " tile_layer_98dc3ee44d17f0ef16b507b178088a6b.addTo(map_6427ede229e1bbe6c8d3644e30a678af);\n", " \n", " \n", - " var layer_control_c98117e4c837a0d38324298896596535_layers = {\n", + " var layer_control_d343304d95c4f5df4712c0468dd74c5d_layers = {\n", " base_layers : {\n", - " "ESRI Satellite" : tile_layer_c87318391be29b066e74776bdf2cbacf,\n", + " "ESRI Satellite" : tile_layer_b4e73fe7c9b143308c30b6160b89e8e5,\n", " },\n", " overlays : {\n", - " "Place Labels" : tile_layer_1160831696ed58c8f1ae102dcab5296e,\n", - " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_6191f09adfeae6d9b0d5e2ac5caaa59f,\n", + " "Place Labels" : tile_layer_86cddcd909d1c67eb7508203ab16efd7,\n", + " "DOW7-Derived Maximum Velocity (Greenfield, IA)" : tile_layer_98dc3ee44d17f0ef16b507b178088a6b,\n", " },\n", " };\n", - " let layer_control_c98117e4c837a0d38324298896596535 = L.control.layers(\n", - " layer_control_c98117e4c837a0d38324298896596535_layers.base_layers,\n", - " layer_control_c98117e4c837a0d38324298896596535_layers.overlays,\n", + " let layer_control_d343304d95c4f5df4712c0468dd74c5d = L.control.layers(\n", + " layer_control_d343304d95c4f5df4712c0468dd74c5d_layers.base_layers,\n", + " layer_control_d343304d95c4f5df4712c0468dd74c5d_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_2293224d2e1a75deeffdd1c7251c6d4a);\n", + " ).addTo(map_6427ede229e1bbe6c8d3644e30a678af);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 22, @@ -10449,7 +10465,7 @@ " <meta name="viewport" content="width=device-width,\n", " initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />\n", " <style>\n", - " #map_4601109ad653d82c51b07afa3e8e72c4 {\n", + " #map_a024353a713478c7e1b324682496115d {\n", " position: relative;\n", " width: 100.0%;\n", " height: 800.0px;\n", @@ -10495,10 +10511,12 @@ " z-index: 1000;\n", " font-size: 18px;\n", " font-weight: bold;\n", - " background: rgba(255,255,255,0.9);\n", - " padding: 8px 12px;\n", + " background: rgba(255,255,255,0.8);\n", + " padding: 8px 20px;\n", + " min-width: 750px;\n", + " text-align: center;\n", " border-radius: 4px;\n", - " box-shadow: 0 2px 4px rgba(0,0,0,0.2);\n", + " box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n", " ">\n", " PlanetScope: Greenfield, IA\n", " </div>\n", @@ -10556,14 +10574,14 @@ " </div>\n", " \n", " \n", - " <div class="folium-map" id="map_4601109ad653d82c51b07afa3e8e72c4" ></div>\n", + " <div class="folium-map" id="map_a024353a713478c7e1b324682496115d" ></div>\n", " \n", "</body>\n", "<script>\n", " \n", " \n", - " var map_4601109ad653d82c51b07afa3e8e72c4 = L.map(\n", - " "map_4601109ad653d82c51b07afa3e8e72c4",\n", + " var map_a024353a713478c7e1b324682496115d = L.map(\n", + " "map_a024353a713478c7e1b324682496115d",\n", " {\n", " center: [41.3036, -94.4569],\n", " crs: L.CRS.EPSG3857,\n", @@ -10575,13 +10593,13 @@ "\n", " }\n", " );\n", - " L.control.scale().addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", + " L.control.scale().addTo(map_a024353a713478c7e1b324682496115d);\n", "\n", " \n", "\n", " \n", " \n", - " var tile_layer_0456a560807a26ffe51947fec3a212b1 = L.tileLayer(\n", + " var tile_layer_ec37d47cfa8e065b8cd2617b20fac299 = L.tileLayer(\n", " "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png",\n", " {\n", " "minZoom": 0,\n", @@ -10598,10 +10616,10 @@ " );\n", " \n", " \n", - " tile_layer_0456a560807a26ffe51947fec3a212b1.addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", + " tile_layer_ec37d47cfa8e065b8cd2617b20fac299.addTo(map_a024353a713478c7e1b324682496115d);\n", " \n", " \n", - " var tile_layer_b781fd3d32e43e0b6641e69af00319e8 = L.tileLayer(\n", + " var tile_layer_5fefb817a238a5f4985ed3a2ec43a64b = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-pre-tornadoes-2024/items/Planet_Greenfield_Before_cog_2024-05-20/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=3\\u0026bidx=2\\u0026bidx=1\\u0026rescale=0%2C2500\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -10618,10 +10636,10 @@ " );\n", " \n", " \n", - " tile_layer_b781fd3d32e43e0b6641e69af00319e8.addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", + " tile_layer_5fefb817a238a5f4985ed3a2ec43a64b.addTo(map_a024353a713478c7e1b324682496115d);\n", " \n", " \n", - " var tile_layer_7c324a39a1463c83c7abc844d1e228cb = L.tileLayer(\n", + " var tile_layer_9a1e1b5b3e74f3ff32f634c3ebb551df = L.tileLayer(\n", " "https://openveda.cloud/api/raster/collections/ps-greenfield-post-tornadoes-2024/items/Planet_Greenfield_After_cog_2024-05-22/tiles/WebMercatorQuad/{z}/{x}/{y}@1x?assets=cog_default\\u0026bidx=1\\u0026bidx=2\\u0026bidx=3\\u0026rescale=0%2C255\\u0026resampling=bilinear",\n", " {\n", " "minZoom": 0,\n", @@ -10638,39 +10656,39 @@ " );\n", " \n", " \n", - " tile_layer_7c324a39a1463c83c7abc844d1e228cb.addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", + " tile_layer_9a1e1b5b3e74f3ff32f634c3ebb551df.addTo(map_a024353a713478c7e1b324682496115d);\n", " \n", " \n", - " var side_by_side_layers_7bbf30a7017ca0845fe39e8985a1803d = L.control.sideBySide(\n", - " tile_layer_b781fd3d32e43e0b6641e69af00319e8, tile_layer_7c324a39a1463c83c7abc844d1e228cb\n", - " ).addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", + " var side_by_side_layers_3eb321d544f2f3694cd4ffdd139a5d7d = L.control.sideBySide(\n", + " tile_layer_5fefb817a238a5f4985ed3a2ec43a64b, tile_layer_9a1e1b5b3e74f3ff32f634c3ebb551df\n", + " ).addTo(map_a024353a713478c7e1b324682496115d);\n", " \n", " \n", - " var layer_control_1b9a06db3c7544d5022922494b24a28b_layers = {\n", + " var layer_control_c76c670cd70c459dd30abcbb462438d2_layers = {\n", " base_layers : {\n", - " "CartoDB Positron" : tile_layer_0456a560807a26ffe51947fec3a212b1,\n", + " "CartoDB Positron" : tile_layer_ec37d47cfa8e065b8cd2617b20fac299,\n", " },\n", " overlays : {\n", - " "PlanetScope Pre-Tornado" : tile_layer_b781fd3d32e43e0b6641e69af00319e8,\n", - " "PlanetScope Post-Tornado" : tile_layer_7c324a39a1463c83c7abc844d1e228cb,\n", + " "PlanetScope Pre-Tornado" : tile_layer_5fefb817a238a5f4985ed3a2ec43a64b,\n", + " "PlanetScope Post-Tornado" : tile_layer_9a1e1b5b3e74f3ff32f634c3ebb551df,\n", " },\n", " };\n", - " let layer_control_1b9a06db3c7544d5022922494b24a28b = L.control.layers(\n", - " layer_control_1b9a06db3c7544d5022922494b24a28b_layers.base_layers,\n", - " layer_control_1b9a06db3c7544d5022922494b24a28b_layers.overlays,\n", + " let layer_control_c76c670cd70c459dd30abcbb462438d2 = L.control.layers(\n", + " layer_control_c76c670cd70c459dd30abcbb462438d2_layers.base_layers,\n", + " layer_control_c76c670cd70c459dd30abcbb462438d2_layers.overlays,\n", " {\n", " "position": "topright",\n", " "collapsed": true,\n", " "autoZIndex": true,\n", "}\n", - " ).addTo(map_4601109ad653d82c51b07afa3e8e72c4);\n", + " ).addTo(map_a024353a713478c7e1b324682496115d);\n", "\n", " \n", "</script>\n", "</html>\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" allowfullscreen webkitallowfullscreen mozallowfullscreen>" ], "text/plain": [ - "" + "" ] }, "execution_count": 25, From bbb8727cd0054f05e7d6b76adb10273b5c8b5254 Mon Sep 17 00:00:00 2001 From: Aaron Serre Date: Thu, 20 Nov 2025 10:32:45 -0600 Subject: [PATCH 24/28] Inititial and final push of dust story notebook --- user-guide/notebooks/stories/dust.ipynb | 461 ++++++++++++++++++++++++ 1 file changed, 461 insertions(+) create mode 100644 user-guide/notebooks/stories/dust.ipynb diff --git a/user-guide/notebooks/stories/dust.ipynb b/user-guide/notebooks/stories/dust.ipynb new file mode 100644 index 00000000..66548ed8 --- /dev/null +++ b/user-guide/notebooks/stories/dust.ipynb @@ -0,0 +1,461 @@ +{ + "cells": [ + { + "cell_type": "raw", + "id": "9ce3839c-cca3-49e0-aa54-a404f2a07d10", + "metadata": {}, + "source": [ + "---\n", + "title: Dust in the Wind, Life in the Water\n", + "description: Effects of African Dust on Plankton Growth in the Tropical North Atlantic Region\n", + "author: \n", + " - Aaron Serre, Madison Wallner, Andrew Blackford, Chelsea Aaron, Trent Cowan, and Udaysankar Nair (UAH)\n", + " (UAH)\n", + " - Aaron Serre (editor)\n", + "date: September 11, 2025\n", + "execute:\n", + " freeze: true\n", + "---" + ] + }, + { + "cell_type": "markdown", + "id": "bc34e9af-d17c-432b-a878-b3fd305ceb3a", + "metadata": {}, + "source": [ + "# Run This Notebook \n", + "\n", + "\n", + "

    πŸš€ Launch in VEDA JupyterHub (requires access)

    \n", + "\n", + "

    To obtain credentials to VEDA Hub, follow this link for more information.

    " + ] + }, + { + "cell_type": "markdown", + "id": "5eed6c15-4ced-4f16-8673-47a2cacda765", + "metadata": {}, + "source": [ + "### The VEDA Data Story on the effects of Dust Deposition over the Atlantic Ocean can be found [_**HERE**_](https://www.earthdata.nasa.gov/dashboard/stories/dust-deposition)\n", + "\n", + "\n", + "\n", + "# Introduction: Role of Dust in the Earth System\n", + "\n", + "The land, ocean, and atmosphere are all parts of the Earth system, and they are linked and influence each other in many ways. One important link is the atmosphere carrying dust, gases, and pollution between continents and from land to ocean. A great example of this connection are massive dust plumes that originate in the Sahara Desert of northern Africa. These dust plumes can travel thousands of kilometers across the Atlantic Ocean and often reach the Americas. Dust from these plumes eventually reaches the ground, either by falling through the air or being brought down by rain, and contains nutrients such as phosphorus and iron. Phosphorus deposited by dust nourishes rainforests in Central and South America. Over the Atlantic, iron is thought to help phytoplanktonβ€”microscopic, plant-like organisms that live in the ocean and produce oxygen through photosynthesisβ€”grow rapidly and in large quantities. These tiny but mighty organisms form the first link in the large ocean food chain, sustaining fish and other marine life.\n", + "\n", + "\n", + "Recent studies suggest that dust falling into remote parts of the Tropical North Atlantic Ocean (TNAO) can affect tuna migration, and, in turn, fishery-dependent economies in nearby regions, including the United States (Map 1). However, our analysis using NASA Earth observation datasets shows that the effect of dust deposition on phytoplankton in the TNAO may be more complex than previously understood." + ] + }, + { + "cell_type": "markdown", + "id": "1aad4848-1a84-49fa-b206-849695be2d8b", + "metadata": {}, + "source": [ + "# Understanding the Way Dust Connects Land, Ocean, and Life Through NASA Earth Observing Tools\n", + "\n", + "\n", + "\n", + "A variety of NASA satellite observations and models help scientists explore the complex interactions between land and ocean that are influenced by dust. NASA's MODerate Resolution Imaging Spectroradiometer (MODIS), an Earth-observing satellite sensor, detects these changes by measuring ocean chlorophyllβ€”a pigment that indicates the presence of phytoplankton. Additionally, NASA’s Plankton, Aerosol, Cloud, and ocean Ecosystem (PACE) mission, launched in 2024, continues to monitor ocean biology through the amount of sunlight reflected back to space that may be affected by atmospheric dust or other aerosols.\n", + "\n", + "\n", + "While satellite sensors allow for monitoring both dust and phytoplankton activity, meteorological and dust transport variables are needed to analyze this interconnected relationship. NASA’s Modern-Era Retrospective analysis for Research and Applications, Version 2 (MERRA-2) provides detailed, three-dimensional wind, temperature, moisture, and dust data, which is essential when determining the influences between dust transport and ocean productivity.\n", + "\n", + "\n", + "The different meteorological variables that may impact and affect phytoplankton across the TNAO include:\n", + "\n", + "Aerosol Optical Depth (AOD): A measure of how much sunlight is blocked or scattered by aerosols (tiny particles in the atmosphere)\n", + "Cloud Cover: Fraction or percentage of the sky covered by clouds\n", + "Sea-Surface Temperatures (SST): The temperature at the top layer of the ocean\n", + "Wind Speed: The rate at which the wind is moving on the ocean surface\n", + "Dust Concentration: The amount of dust present in a volume of the atmosphere\n", + "\n", + "\n", + "\n", + "Over the past 20 years, data has shown that chlorophyll-a levels – which is a direct indicator of phytoplankton – have been rising in the TNAO (Figure 1). The observed increase in phytoplankton compared to previous years alludes to a potential meteorological influence." + ] + }, + { + "cell_type": "markdown", + "id": "1e22faeb-f227-495e-b839-eb65c3ed156b", + "metadata": {}, + "source": [ + "# Chlorophyll-a Dataset Slider Map:" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "9fba7dec-3e8b-4085-8047-ad3e869d97c1", + "metadata": {}, + "outputs": [], + "source": [ + "# Calling in packages and finding the chlorophyll-a dataset:\n", + "\n", + "import glob\n", + "import folium\n", + "from folium.plugins import SideBySideLayers\n", + "\n", + "# Base tile URLs\n", + "BASE_TILE_URL = \"https://openveda.cloud/api/raster/collections/{collection_id}/items/{item_id}/tiles/WebMercatorQuad/{{z}}/{{x}}/{{y}}.png?assets=cog_default\"\n", + "collection_id = \"dust_depo_chlorophyll\"" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "1d95bc79-0537-4169-92f4-8e307d7f32af", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
    Make this Notebook Trusted to load map: File -> Trust Notebook
    " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Creatiing the slider map for chlorophyll-a between April 13, 2025 and July 1, 2025:\n", + "\n", + "tile_2024 = BASE_TILE_URL.format(collection_id=collection_id, item_id=\"Dust_PACE_chlorophyll_COG_2024-05-23\")\n", + "tile_2025 = BASE_TILE_URL.format(collection_id=collection_id, item_id=\"Dust_PACE_chlorophyll_COG_2025-04-13\")\n", + "\n", + "# Create map\n", + "m = folium.Map(location=[12, -47], zoom_start=6, tiles=\"Esri.WorldImagery\")\n", + "\n", + "# Left layer = Chlorophyll 2024\n", + "layer_left = folium.raster_layers.TileLayer(\n", + " tiles=tile_2024,\n", + " attr=\"NASA VEDA\",\n", + " name=\"Chlorophyll 2024\",\n", + " overlay=True,\n", + " control=False,\n", + " opacity=0.8\n", + ").add_to(m)\n", + "\n", + "# Right layer = Chlorophyll 2025\n", + "layer_right = folium.raster_layers.TileLayer(\n", + " tiles=tile_2025,\n", + " attr=\"NASA VEDA\",\n", + " name=\"Chlorophyll 2025\",\n", + " overlay=True,\n", + " control=False,\n", + " opacity=0.8\n", + ").add_to(m)\n", + "\n", + "# Add draggable slider\n", + "SideBySideLayers(layer_left, layer_right).add_to(m)\n", + "\n", + "# Display map\n", + "m\n" + ] + }, + { + "cell_type": "markdown", + "id": "b257a569-769a-4df1-9d1b-2de54984fd11", + "metadata": {}, + "source": [ + "# AOD and Phytoplankton\n", + "\n", + "\n", + "\n", + "At the same time, long-term satellite observations from MODIS sensors as well as MERRA-2 reanalysis data have recorded slightly higher levels of aerosols over the same 20-year period, which in this region are mostly caused by dust (Figure 2). The fact that both aerosols and chlorophyll-a have increased together points to a possible connection: more dust blowing into the ocean may be helping fertilize the water, leading to more phytoplankton growth.\n", + "\n", + "\n", + "\n", + "This trend would seem to imply that the more dust deposition there is, the more abundant the phytoplankton are. However, other factors appear to influence increasing phytoplankton concentrations." + ] + }, + { + "cell_type": "markdown", + "id": "ec36a863-4e52-4890-a118-91294f0c73da", + "metadata": {}, + "source": [ + "# Effect of Cloud Cover and Dust on Sunlight and Photosynthesis\n", + "\n", + "\n", + "\n", + "\n", + "Phytoplankton growth depends on many factors besides dust. Even when dust adds nutrients to the ocean, it doesn’t always lead to more phytoplankton if the water already has enough nutrients. In fact, dust in the air can block some sunlight from reaching the ocean surface, which can reduce photosynthesis and slow plankton growth. Clouds have a similar effect by cutting down the amount of sunlight.\n", + "\n", + "\n", + "\n", + "\n", + "Interestingly, though, recent data shows that phytoplankton populations have still increased in recent years, even though cloud cover and dust have also shown an increasing trend (Figure 3). Normally, more clouds would limit the sunlight needed for photosynthesis, leading to less phytoplankton. But the steady rise in chlorophyll-a levels suggests that increased cloudiness and dust causing blocked sunlight has not been enough to hold back phytoplankton growth." + ] + }, + { + "cell_type": "markdown", + "id": "266d725c-c943-4ec7-abc0-c87917c811c4", + "metadata": {}, + "source": [ + "# Rainfall and Phytoplankton\n", + "\n", + "\n", + "\n", + "Although more cloud cover has shown an increasing trend over the past two decades, rainfall in this region has actually decreased over time. This decline in rain could be changing how dust gets deposited onto the ocean surface. Usually, rain helps wash dust out of the airβ€”a process called wet deposition. But with less rain, more dust may be settling straight onto the ocean surface (dry deposition), bringing nutrients that encourage phytoplankton growth. This change in how dust is delivered could help explain why chlorophyll-a levels keep rising despite more cloud cover.\n", + "\n", + "\n", + "\n", + "\n", + "Rainfall itself also plays an important role. It can carry dust and nutrients into the ocean, which sometimes supports plankton growth. On the other hand, rain can also wash away gases like carbon dioxide or change the chemistry of seawater in ways that might limit plankton activity." + ] + }, + { + "cell_type": "markdown", + "id": "dee0b54c-fd7d-4fd9-be84-96fc300869f4", + "metadata": {}, + "source": [ + "# Effect of Sea Surface Temperature on Vertical Mixing\n", + "\n", + "\n", + "There is a slightly increasing trend in SST over the past two decades in the TNAO (Figure 5). In general, cooler SSTs can be a sign that mixing and upwelling are bringing nutrients from deeper layers up to the surface, which supports phytoplankton growth. Warmer SSTs, on the other hand, often indicate less mixing and fewer nutrients reaching the surface.\n", + "\n", + "However, when looking at how phytoplankton respond to rising SST in this region, chlorophyll-a concentrations have still increased over time. This suggests that SST itself isn’t directly controlling phytoplankton growth. The increasing trend in SST would suggest there should be a decrease in phytoplankton, but that is not what we see." + ] + }, + { + "cell_type": "markdown", + "id": "e0c11bf6-1cfd-4f8d-babf-569ec16a6026", + "metadata": {}, + "source": [ + "# Wind Speed and Phytoplankton\n", + "\n", + "\n", + "Wind speed also directly influences nutrient mixing in the ocean, which supports phytoplankton growth. Stronger winds cause more mixing, bringing nutrients from deeper waters to the surface. According to MERRA-2-derived monthly mean values, wind speeds have steadily decreased across the TNAO (Figure 6). Decreasing wind speeds would imply decreasing phytoplankton concentrations, but this is not the case." + ] + }, + { + "cell_type": "markdown", + "id": "506626ab-0365-49b4-b75a-90956d553739", + "metadata": {}, + "source": [ + "# Dust Deposition and Phytoplankton\n", + "\n", + "\n", + "\n", + "Dry dust deposition (DDD) has been significantly increasing over the past two decades in the TNAO area of interest, while wet dust deposition (WDD) has been notably decreasing over the same time period (Figure 7). DDD is the rate of direct dust settling into the ocean, while WDD is the rate at which rain removes dust from the atmosphere and deposits it into the ocean. These trends align well with the results of the rain rate analysis over the area of interest." + ] + }, + { + "cell_type": "markdown", + "id": "c117c9fa-dcc5-4431-b4ef-c0eb90547771", + "metadata": {}, + "source": [ + "# Conclusion\n", + "\n", + "\n", + "\n", + "While dust over the TNAO has been increasing, other factors that affect phytoplankton growth have also been changing. Our statistical analysis using NASA Earth observation data \n", + "products suggests that decreasing rainfall in the area of interest is an important factor in phytoplankton growth. It was also found that dust that directly falls onto the ocean surface is \n", + "beneficial in phytoplankton growth, while dust that has been washed out by rain onto the ocean surface appears to have the opposite effect. This may be because in addition to depositing the dust, rain carries dissolved gases that could harm phytoplankton. While previous studies have documented rising trends in both dust and phytoplankton in this region, the role of decreasing rainfallβ€”and the contrasting effects of dust falling directly into the ocean versus being washed out by rainβ€”has received little attention. These findings point to new and important ways that land-atmosphere interactions can influence ocean biology, highlighting the need for continued investigation. However, note that this study uses an analysis of values averaged over a large area, which may hide complexities, and thus, further studies are needed.\n", + "\n", + "\n", + "\n", + "As the foundation of the marine food web, phytoplankton are critical to ocean biodiversity and the sustainability of global fisheries. These effects extend beyond the region; there are direct economic links to the United States. For instance, the U.S. imported nearly $30 million worth of seafood from Senegal alone in 2019β€”including tuna, mollusks, octopus, and shrimpβ€”harvested from waters influenced by TNAO conditions (Map 3). Understanding the environmental drivers of phytoplankton productivity in this region is therefore essential not only for protecting local ecosystems but also for supporting global seafood supply chains that benefit U.S. consumers and markets. Understanding what drives phytoplankton productivity in the TNAO is essential for protecting local ecosystems and supporting seafood supply chains that benefit consumers worldwide." + ] + }, + { + "cell_type": "markdown", + "id": "31c19403-4db2-432c-b3d6-e36b7430de82", + "metadata": {}, + "source": [ + "# Clean Up (Optional)\n", + "\n", + "\n", + "Remove any **core** files that were created if the kernel crashed." + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "c4bff41a-e26a-4d1c-be20-f9c7a8d6d930", + "metadata": {}, + "outputs": [], + "source": [ + "# find all core files in the current directory\n", + "for core_path in glob.glob(\"core.*\"):\n", + " try:\n", + " os.remove(core_path)\n", + " print(f\"Removed {core_path}\")\n", + " except OSError as e:\n", + " print(f\"Error removing {core_path}: {e}\")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.11" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From 010120c44b2df8157c8820d43c06f09a984bb398 Mon Sep 17 00:00:00 2001 From: Aaron Serre Date: Thu, 20 Nov 2025 11:23:42 -0600 Subject: [PATCH 25/28] Added binder and disclaimer --- user-guide/notebooks/stories/dust.ipynb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/user-guide/notebooks/stories/dust.ipynb b/user-guide/notebooks/stories/dust.ipynb index 66548ed8..fe136538 100644 --- a/user-guide/notebooks/stories/dust.ipynb +++ b/user-guide/notebooks/stories/dust.ipynb @@ -31,6 +31,24 @@ "

    To obtain credentials to VEDA Hub, follow this link for more information.

    " ] }, + { + "cell_type": "markdown", + "id": "ff582713", + "metadata": {}, + "source": [ + "
    \n", + "Disclaimer: it is highly recommended to run a tutorial within NASA VEDA JupyterHub, which already includes functions for processing and visualizing data specific to VEDA stories. Running the tutorial outside of the VEDA JupyterHub may lead to errors, specifically related to EarthData authentication. Additionally, it is recommended to use the Pangeo workspace within the VEDA JupyterHub, since certain packages relevant to this tutorial are already installed.
    \n", + "\n", + "

    If you do not have a VEDA Jupyterhub Account you can launch this notebook on your local environment using MyBinder by clicking the icon below.

    \n", + "
    \n", + "\n", + "\"Binder\" " + ] + }, { "cell_type": "markdown", "id": "5eed6c15-4ced-4f16-8673-47a2cacda765", From 3128d201bb8d5a17474b5e8da967f42d7f6d3aaa Mon Sep 17 00:00:00 2001 From: Andrew Blackford <62357205+acblackford@users.noreply.github.com> Date: Tue, 9 Dec 2025 14:44:20 -0600 Subject: [PATCH 26/28] updated notebook to reflect changes from Harshini's review comments --- user-guide/notebooks/stories/dust.ipynb | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/user-guide/notebooks/stories/dust.ipynb b/user-guide/notebooks/stories/dust.ipynb index fe136538..bcd911e3 100644 --- a/user-guide/notebooks/stories/dust.ipynb +++ b/user-guide/notebooks/stories/dust.ipynb @@ -26,7 +26,7 @@ "# Run This Notebook \n", "\n", "\n", - "

    πŸš€ Launch in VEDA JupyterHub (requires access)

    \n", + "

    πŸš€ Launch in VEDA JupyterHub (requires access)

    \n", "\n", "

    To obtain credentials to VEDA Hub, follow this link for more information.

    " ] @@ -45,7 +45,7 @@ "\n", "

    If you do not have a VEDA Jupyterhub Account you can launch this notebook on your local environment using MyBinder by clicking the icon below.

    \n", "
    \n", - "\n", + "\n", "\"Binder\" " ] }, @@ -104,7 +104,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": null, "id": "9fba7dec-3e8b-4085-8047-ad3e869d97c1", "metadata": {}, "outputs": [], @@ -112,6 +112,7 @@ "# Calling in packages and finding the chlorophyll-a dataset:\n", "\n", "import glob\n", + "import os\n", "import folium\n", "from folium.plugins import SideBySideLayers\n", "\n", @@ -122,7 +123,7 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": null, "id": "1d95bc79-0537-4169-92f4-8e307d7f32af", "metadata": {}, "outputs": [ @@ -287,7 +288,7 @@ } ], "source": [ - "# Creatiing the slider map for chlorophyll-a between April 13, 2025 and July 1, 2025:\n", + "# Creating the slider map for chlorophyll-a between April 13, 2025 and May 23, 2025:\n", "\n", "tile_2024 = BASE_TILE_URL.format(collection_id=collection_id, item_id=\"Dust_PACE_chlorophyll_COG_2024-05-23\")\n", "tile_2025 = BASE_TILE_URL.format(collection_id=collection_id, item_id=\"Dust_PACE_chlorophyll_COG_2025-04-13\")\n", @@ -319,7 +320,11 @@ "SideBySideLayers(layer_left, layer_right).add_to(m)\n", "\n", "# Display map\n", - "m\n" + "m\n", + "\n", + "print(\n", + " \"The color ramp represents chlorophyll-a concentration, with higher values shown in brighter/warmer colors.\"\n", + ")" ] }, { @@ -435,7 +440,7 @@ "# Clean Up (Optional)\n", "\n", "\n", - "Remove any **core** files that were created if the kernel crashed." + "Remove any **core** files that were created if the kernel crashed. This step is only necessary if the kernel has crashed and left ebhind core dump values (named like core.*); otherwise, you can safely skip it." ] }, { From 87f28388f9545b0d3da9c73109d69490dc7b2354 Mon Sep 17 00:00:00 2001 From: Andrew Blackford <62357205+acblackford@users.noreply.github.com> Date: Tue, 9 Dec 2025 14:51:01 -0600 Subject: [PATCH 27/28] add to quarto --- _quarto.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/_quarto.yml b/_quarto.yml index b5675544..968a8aa6 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -126,6 +126,7 @@ website: contents: - user-guide/notebooks/stories/derechos.ipynb - user-guide/notebooks/stories/tornadoes_2024_notebook.ipynb + - user-guide/notebooks/stories/dust.ipynb - text: "---" - section: open-source-ecosystem/index.qmd contents: From 27ea3d781c894366a0da0abbea88a31f5885b4af Mon Sep 17 00:00:00 2001 From: Andrew Blackford <62357205+acblackford@users.noreply.github.com> Date: Tue, 9 Dec 2025 15:03:31 -0600 Subject: [PATCH 28/28] fix raw block --- user-guide/notebooks/stories/dust.ipynb | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/user-guide/notebooks/stories/dust.ipynb b/user-guide/notebooks/stories/dust.ipynb index bcd911e3..a904af80 100644 --- a/user-guide/notebooks/stories/dust.ipynb +++ b/user-guide/notebooks/stories/dust.ipynb @@ -8,10 +8,7 @@ "---\n", "title: Dust in the Wind, Life in the Water\n", "description: Effects of African Dust on Plankton Growth in the Tropical North Atlantic Region\n", - "author: \n", - " - Aaron Serre, Madison Wallner, Andrew Blackford, Chelsea Aaron, Trent Cowan, and Udaysankar Nair (UAH)\n", - " (UAH)\n", - " - Aaron Serre (editor)\n", + "author: Aaron Serre (UAH)\n", "date: September 11, 2025\n", "execute:\n", " freeze: true\n",