From eb54385dc1e255556cc5118b39a5ca2db737e69b Mon Sep 17 00:00:00 2001
From: tomvothecoder <tomvothecoder@gmail.com>
Date: Thu, 7 Nov 2024 11:39:06 -0800
Subject: [PATCH] Update dask notebook

---
 .../parallel-computing-with-dask.ipynb        | 1638 ++++++++++++++++-
 1 file changed, 1620 insertions(+), 18 deletions(-)

diff --git a/docs/examples/parallel-computing-with-dask.ipynb b/docs/examples/parallel-computing-with-dask.ipynb
index 0b81bf46..0f591772 100644
--- a/docs/examples/parallel-computing-with-dask.ipynb
+++ b/docs/examples/parallel-computing-with-dask.ipynb
@@ -36,7 +36,7 @@
     "Users can [install their own instance of xcdat](../getting-started-guide/installation.rst) and follow these examples using their own environment (e.g., with vscode, Jupyter, Spyder, iPython) or [enable xcdat with existing JupyterHub instances](../getting-started-guide/getting-started-hpc-jupyter.rst). The conda environment used in this notebook includes xcdat, xesmf, matplotlib, ipython, ipykernel, cartopy, and jupyter:\n",
     "\n",
     "```bash\n",
-    "conda create -n xcdat_notebook_dask -c conda-forge xcdat matplotlib ipython ipykernel cartopy nc-time-axis jupyter jupyter-server-proxy\n",
+    "conda create -n xcdat_notebook_dask -c conda-forge xcdat matplotlib ipython ipykernel cartopy nc-time-axis jupyter jupyter-server-proxy pooch\n",
     "```\n"
    ]
   },
@@ -303,7 +303,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 1,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -345,9 +345,56 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 2,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "2024-11-07 11:36:54,675 [INFO]: scheduler.py(__init__:1760) >> State start\n",
+      "2024-11-07 11:36:54,675 [INFO]: scheduler.py(__init__:1760) >> State start\n",
+      "2024-11-07 11:36:54,678 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/worker-l7ftm53g', purging\n",
+      "2024-11-07 11:36:54,678 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/worker-l7ftm53g', purging\n",
+      "2024-11-07 11:36:54,680 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/worker-a_4k7kfp', purging\n",
+      "2024-11-07 11:36:54,680 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/worker-a_4k7kfp', purging\n",
+      "2024-11-07 11:36:54,681 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/scheduler-n9nwbvdd', purging\n",
+      "2024-11-07 11:36:54,681 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/scheduler-n9nwbvdd', purging\n",
+      "2024-11-07 11:36:54,682 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/worker-htp16phv', purging\n",
+      "2024-11-07 11:36:54,682 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/worker-htp16phv', purging\n",
+      "2024-11-07 11:36:54,683 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/worker-6i9eauc2', purging\n",
+      "2024-11-07 11:36:54,683 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/worker-6i9eauc2', purging\n",
+      "2024-11-07 11:36:54,684 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/scheduler-jglxxy3k', purging\n",
+      "2024-11-07 11:36:54,684 [INFO]: diskutils.py(_check_lock_or_purge:252) >> Found stale lock file and directory '/tmp/dask-scratch-space/scheduler-jglxxy3k', purging\n",
+      "2024-11-07 11:36:54,694 [INFO]: scheduler.py(start_unsafe:4222) >>   Scheduler at:     tcp://127.0.0.1:40291\n",
+      "2024-11-07 11:36:54,694 [INFO]: scheduler.py(start_unsafe:4222) >>   Scheduler at:     tcp://127.0.0.1:40291\n",
+      "2024-11-07 11:36:54,696 [INFO]: scheduler.py(start_unsafe:4237) >>   dashboard at:  http://127.0.0.1:8787/status\n",
+      "2024-11-07 11:36:54,696 [INFO]: scheduler.py(start_unsafe:4237) >>   dashboard at:  http://127.0.0.1:8787/status\n",
+      "2024-11-07 11:36:54,697 [INFO]: scheduler.py(register_worker_plugin:8063) >> Registering Worker plugin shuffle\n",
+      "2024-11-07 11:36:54,697 [INFO]: scheduler.py(register_worker_plugin:8063) >> Registering Worker plugin shuffle\n",
+      "2024-11-07 11:36:54,720 [INFO]: nanny.py(start_unsafe:368) >>         Start Nanny at: 'tcp://127.0.0.1:42579'\n",
+      "2024-11-07 11:36:54,720 [INFO]: nanny.py(start_unsafe:368) >>         Start Nanny at: 'tcp://127.0.0.1:42579'\n",
+      "2024-11-07 11:36:54,729 [INFO]: nanny.py(start_unsafe:368) >>         Start Nanny at: 'tcp://127.0.0.1:45087'\n",
+      "2024-11-07 11:36:54,729 [INFO]: nanny.py(start_unsafe:368) >>         Start Nanny at: 'tcp://127.0.0.1:45087'\n",
+      "2024-11-07 11:36:56,357 [INFO]: scheduler.py(add_worker:4576) >> Register worker <WorkerState 'tcp://127.0.0.1:44039', name: 0, status: init, memory: 0, processing: 0>\n",
+      "2024-11-07 11:36:56,357 [INFO]: scheduler.py(add_worker:4576) >> Register worker <WorkerState 'tcp://127.0.0.1:44039', name: 0, status: init, memory: 0, processing: 0>\n",
+      "2024-11-07 11:36:56,363 [INFO]: scheduler.py(handle_worker:6119) >> Starting worker compute stream, tcp://127.0.0.1:44039\n",
+      "2024-11-07 11:36:56,363 [INFO]: scheduler.py(handle_worker:6119) >> Starting worker compute stream, tcp://127.0.0.1:44039\n",
+      "2024-11-07 11:36:56,365 [INFO]: core.py(handle_stream:880) >> Starting established connection to tcp://127.0.0.1:60610\n",
+      "2024-11-07 11:36:56,365 [INFO]: core.py(handle_stream:880) >> Starting established connection to tcp://127.0.0.1:60610\n",
+      "2024-11-07 11:36:56,373 [INFO]: scheduler.py(add_worker:4576) >> Register worker <WorkerState 'tcp://127.0.0.1:39575', name: 1, status: init, memory: 0, processing: 0>\n",
+      "2024-11-07 11:36:56,373 [INFO]: scheduler.py(add_worker:4576) >> Register worker <WorkerState 'tcp://127.0.0.1:39575', name: 1, status: init, memory: 0, processing: 0>\n",
+      "2024-11-07 11:36:56,374 [INFO]: scheduler.py(handle_worker:6119) >> Starting worker compute stream, tcp://127.0.0.1:39575\n",
+      "2024-11-07 11:36:56,374 [INFO]: scheduler.py(handle_worker:6119) >> Starting worker compute stream, tcp://127.0.0.1:39575\n",
+      "2024-11-07 11:36:56,376 [INFO]: core.py(handle_stream:880) >> Starting established connection to tcp://127.0.0.1:60598\n",
+      "2024-11-07 11:36:56,376 [INFO]: core.py(handle_stream:880) >> Starting established connection to tcp://127.0.0.1:60598\n",
+      "2024-11-07 11:36:56,425 [INFO]: scheduler.py(add_client:5874) >> Receive client connection: Client-a5ef60f6-9d3f-11ef-b315-73ffea27fb16\n",
+      "2024-11-07 11:36:56,425 [INFO]: scheduler.py(add_client:5874) >> Receive client connection: Client-a5ef60f6-9d3f-11ef-b315-73ffea27fb16\n",
+      "2024-11-07 11:36:56,426 [INFO]: core.py(handle_stream:880) >> Starting established connection to tcp://127.0.0.1:60620\n",
+      "2024-11-07 11:36:56,426 [INFO]: core.py(handle_stream:880) >> Starting established connection to tcp://127.0.0.1:60620\n"
+     ]
+    }
+   ],
    "source": [
     "from dask.distributed import Client, LocalCluster\n",
     "\n",
@@ -360,9 +407,201 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 3,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "5f1028ef99ef4397a8255625088e2677",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/html": [
+       "<div class=\"jp-RenderedHTMLCommon jp-RenderedHTML jp-mod-trusted jp-OutputArea-output\">\n",
+       "    <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\">\n",
+       "    </div>\n",
+       "    <div style=\"margin-left: 48px;\">\n",
+       "        <h3 style=\"margin-bottom: 0px; margin-top: 0px;\">LocalCluster</h3>\n",
+       "        <p style=\"color: #9D9D9D; margin-bottom: 0px;\">d1cd0b8b</p>\n",
+       "        <table style=\"width: 100%; text-align: left;\">\n",
+       "            <tr>\n",
+       "                <td style=\"text-align: left;\">\n",
+       "                    <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:8787/status\" target=\"_blank\">http://127.0.0.1:8787/status</a>\n",
+       "                </td>\n",
+       "                <td style=\"text-align: left;\">\n",
+       "                    <strong>Workers:</strong> 2\n",
+       "                </td>\n",
+       "            </tr>\n",
+       "            <tr>\n",
+       "                <td style=\"text-align: left;\">\n",
+       "                    <strong>Total threads:</strong> 2\n",
+       "                </td>\n",
+       "                <td style=\"text-align: left;\">\n",
+       "                    <strong>Total memory:</strong> 7.45 GiB\n",
+       "                </td>\n",
+       "            </tr>\n",
+       "            \n",
+       "            <tr>\n",
+       "    <td style=\"text-align: left;\"><strong>Status:</strong> running</td>\n",
+       "    <td style=\"text-align: left;\"><strong>Using processes:</strong> True</td>\n",
+       "</tr>\n",
+       "\n",
+       "            \n",
+       "        </table>\n",
+       "\n",
+       "        <details>\n",
+       "            <summary style=\"margin-bottom: 20px;\">\n",
+       "                <h3 style=\"display: inline;\">Scheduler Info</h3>\n",
+       "            </summary>\n",
+       "\n",
+       "            <div style=\"\">\n",
+       "    <div>\n",
+       "        <div style=\"width: 24px; height: 24px; background-color: #FFF7E5; border: 3px solid #FF6132; border-radius: 5px; position: absolute;\"> </div>\n",
+       "        <div style=\"margin-left: 48px;\">\n",
+       "            <h3 style=\"margin-bottom: 0px;\">Scheduler</h3>\n",
+       "            <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Scheduler-fd19ca10-a8ad-40d8-adaa-0982602d0dc7</p>\n",
+       "            <table style=\"width: 100%; text-align: left;\">\n",
+       "                <tr>\n",
+       "                    <td style=\"text-align: left;\">\n",
+       "                        <strong>Comm:</strong> tcp://127.0.0.1:40291\n",
+       "                    </td>\n",
+       "                    <td style=\"text-align: left;\">\n",
+       "                        <strong>Workers:</strong> 2\n",
+       "                    </td>\n",
+       "                </tr>\n",
+       "                <tr>\n",
+       "                    <td style=\"text-align: left;\">\n",
+       "                        <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:8787/status\" target=\"_blank\">http://127.0.0.1:8787/status</a>\n",
+       "                    </td>\n",
+       "                    <td style=\"text-align: left;\">\n",
+       "                        <strong>Total threads:</strong> 2\n",
+       "                    </td>\n",
+       "                </tr>\n",
+       "                <tr>\n",
+       "                    <td style=\"text-align: left;\">\n",
+       "                        <strong>Started:</strong> Just now\n",
+       "                    </td>\n",
+       "                    <td style=\"text-align: left;\">\n",
+       "                        <strong>Total memory:</strong> 7.45 GiB\n",
+       "                    </td>\n",
+       "                </tr>\n",
+       "            </table>\n",
+       "        </div>\n",
+       "    </div>\n",
+       "\n",
+       "    <details style=\"margin-left: 48px;\">\n",
+       "        <summary style=\"margin-bottom: 20px;\">\n",
+       "            <h3 style=\"display: inline;\">Workers</h3>\n",
+       "        </summary>\n",
+       "\n",
+       "        \n",
+       "        <div style=\"margin-bottom: 20px;\">\n",
+       "            <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
+       "            <div style=\"margin-left: 48px;\">\n",
+       "            <details>\n",
+       "                <summary>\n",
+       "                    <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 0</h4>\n",
+       "                </summary>\n",
+       "                <table style=\"width: 100%; text-align: left;\">\n",
+       "                    <tr>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Comm: </strong> tcp://127.0.0.1:44039\n",
+       "                        </td>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Total threads: </strong> 1\n",
+       "                        </td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:44557/status\" target=\"_blank\">http://127.0.0.1:44557/status</a>\n",
+       "                        </td>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Memory: </strong> 3.73 GiB\n",
+       "                        </td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Nanny: </strong> tcp://127.0.0.1:42579\n",
+       "                        </td>\n",
+       "                        <td style=\"text-align: left;\"></td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <td colspan=\"2\" style=\"text-align: left;\">\n",
+       "                            <strong>Local directory: </strong> /tmp/dask-scratch-space/worker-4_1tplq6\n",
+       "                        </td>\n",
+       "                    </tr>\n",
+       "\n",
+       "                    \n",
+       "\n",
+       "                    \n",
+       "\n",
+       "                </table>\n",
+       "            </details>\n",
+       "            </div>\n",
+       "        </div>\n",
+       "        \n",
+       "        <div style=\"margin-bottom: 20px;\">\n",
+       "            <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
+       "            <div style=\"margin-left: 48px;\">\n",
+       "            <details>\n",
+       "                <summary>\n",
+       "                    <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 1</h4>\n",
+       "                </summary>\n",
+       "                <table style=\"width: 100%; text-align: left;\">\n",
+       "                    <tr>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Comm: </strong> tcp://127.0.0.1:39575\n",
+       "                        </td>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Total threads: </strong> 1\n",
+       "                        </td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:42253/status\" target=\"_blank\">http://127.0.0.1:42253/status</a>\n",
+       "                        </td>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Memory: </strong> 3.73 GiB\n",
+       "                        </td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <td style=\"text-align: left;\">\n",
+       "                            <strong>Nanny: </strong> tcp://127.0.0.1:45087\n",
+       "                        </td>\n",
+       "                        <td style=\"text-align: left;\"></td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <td colspan=\"2\" style=\"text-align: left;\">\n",
+       "                            <strong>Local directory: </strong> /tmp/dask-scratch-space/worker-ermlv8xf\n",
+       "                        </td>\n",
+       "                    </tr>\n",
+       "\n",
+       "                    \n",
+       "\n",
+       "                    \n",
+       "\n",
+       "                </table>\n",
+       "            </details>\n",
+       "            </div>\n",
+       "        </div>\n",
+       "        \n",
+       "\n",
+       "    </details>\n",
+       "</div>\n",
+       "\n",
+       "        </details>\n",
+       "    </div>\n",
+       "</div>"
+      ],
+      "text/plain": [
+       "LocalCluster(d1cd0b8b, 'tcp://127.0.0.1:40291', workers=2, threads=2, memory=7.45 GiB)"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
    "source": [
     "client.cluster"
    ]
@@ -394,9 +633,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 4,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "'http://127.0.0.1:8787/status'"
+      ]
+     },
+     "execution_count": 4,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "client.dashboard_link"
    ]
@@ -411,9 +661,651 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 5,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
+       "<defs>\n",
+       "<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
+       "<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
+       "<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
+       "<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
+       "</symbol>\n",
+       "<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
+       "<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
+       "<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
+       "<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
+       "<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
+       "</symbol>\n",
+       "</defs>\n",
+       "</svg>\n",
+       "<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
+       " *\n",
+       " */\n",
+       "\n",
+       ":root {\n",
+       "  --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
+       "  --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
+       "  --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
+       "  --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
+       "  --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
+       "  --xr-background-color: var(--jp-layout-color0, white);\n",
+       "  --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
+       "  --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
+       "}\n",
+       "\n",
+       "html[theme=dark],\n",
+       "html[data-theme=dark],\n",
+       "body[data-theme=dark],\n",
+       "body.vscode-dark {\n",
+       "  --xr-font-color0: rgba(255, 255, 255, 1);\n",
+       "  --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
+       "  --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
+       "  --xr-border-color: #1F1F1F;\n",
+       "  --xr-disabled-color: #515151;\n",
+       "  --xr-background-color: #111111;\n",
+       "  --xr-background-color-row-even: #111111;\n",
+       "  --xr-background-color-row-odd: #313131;\n",
+       "}\n",
+       "\n",
+       ".xr-wrap {\n",
+       "  display: block !important;\n",
+       "  min-width: 300px;\n",
+       "  max-width: 700px;\n",
+       "}\n",
+       "\n",
+       ".xr-text-repr-fallback {\n",
+       "  /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
+       "  display: none;\n",
+       "}\n",
+       "\n",
+       ".xr-header {\n",
+       "  padding-top: 6px;\n",
+       "  padding-bottom: 6px;\n",
+       "  margin-bottom: 4px;\n",
+       "  border-bottom: solid 1px var(--xr-border-color);\n",
+       "}\n",
+       "\n",
+       ".xr-header > div,\n",
+       ".xr-header > ul {\n",
+       "  display: inline;\n",
+       "  margin-top: 0;\n",
+       "  margin-bottom: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-obj-type,\n",
+       ".xr-array-name {\n",
+       "  margin-left: 2px;\n",
+       "  margin-right: 10px;\n",
+       "}\n",
+       "\n",
+       ".xr-obj-type {\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-sections {\n",
+       "  padding-left: 0 !important;\n",
+       "  display: grid;\n",
+       "  grid-template-columns: 150px auto auto 1fr 0 20px 0 20px;\n",
+       "}\n",
+       "\n",
+       ".xr-section-item {\n",
+       "  display: contents;\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input {\n",
+       "  display: inline-block;\n",
+       "  opacity: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input + label {\n",
+       "  color: var(--xr-disabled-color);\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input:enabled + label {\n",
+       "  cursor: pointer;\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input:focus + label {\n",
+       "  border: 2px solid var(--xr-font-color0);\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input:enabled + label:hover {\n",
+       "  color: var(--xr-font-color0);\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary {\n",
+       "  grid-column: 1;\n",
+       "  color: var(--xr-font-color2);\n",
+       "  font-weight: 500;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary > span {\n",
+       "  display: inline-block;\n",
+       "  padding-left: 0.5em;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:disabled + label {\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in + label:before {\n",
+       "  display: inline-block;\n",
+       "  content: '►';\n",
+       "  font-size: 11px;\n",
+       "  width: 15px;\n",
+       "  text-align: center;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:disabled + label:before {\n",
+       "  color: var(--xr-disabled-color);\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:checked + label:before {\n",
+       "  content: '▼';\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:checked + label > span {\n",
+       "  display: none;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary,\n",
+       ".xr-section-inline-details {\n",
+       "  padding-top: 4px;\n",
+       "  padding-bottom: 4px;\n",
+       "}\n",
+       "\n",
+       ".xr-section-inline-details {\n",
+       "  grid-column: 2 / -1;\n",
+       "}\n",
+       "\n",
+       ".xr-section-details {\n",
+       "  display: none;\n",
+       "  grid-column: 1 / -1;\n",
+       "  margin-bottom: 5px;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:checked ~ .xr-section-details {\n",
+       "  display: contents;\n",
+       "}\n",
+       "\n",
+       ".xr-array-wrap {\n",
+       "  grid-column: 1 / -1;\n",
+       "  display: grid;\n",
+       "  grid-template-columns: 20px auto;\n",
+       "}\n",
+       "\n",
+       ".xr-array-wrap > label {\n",
+       "  grid-column: 1;\n",
+       "  vertical-align: top;\n",
+       "}\n",
+       "\n",
+       ".xr-preview {\n",
+       "  color: var(--xr-font-color3);\n",
+       "}\n",
+       "\n",
+       ".xr-array-preview,\n",
+       ".xr-array-data {\n",
+       "  padding: 0 5px !important;\n",
+       "  grid-column: 2;\n",
+       "}\n",
+       "\n",
+       ".xr-array-data,\n",
+       ".xr-array-in:checked ~ .xr-array-preview {\n",
+       "  display: none;\n",
+       "}\n",
+       "\n",
+       ".xr-array-in:checked ~ .xr-array-data,\n",
+       ".xr-array-preview {\n",
+       "  display: inline-block;\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list {\n",
+       "  display: inline-block !important;\n",
+       "  list-style: none;\n",
+       "  padding: 0 !important;\n",
+       "  margin: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list li {\n",
+       "  display: inline-block;\n",
+       "  padding: 0;\n",
+       "  margin: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list:before {\n",
+       "  content: '(';\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list:after {\n",
+       "  content: ')';\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list li:not(:last-child):after {\n",
+       "  content: ',';\n",
+       "  padding-right: 5px;\n",
+       "}\n",
+       "\n",
+       ".xr-has-index {\n",
+       "  font-weight: bold;\n",
+       "}\n",
+       "\n",
+       ".xr-var-list,\n",
+       ".xr-var-item {\n",
+       "  display: contents;\n",
+       "}\n",
+       "\n",
+       ".xr-var-item > div,\n",
+       ".xr-var-item label,\n",
+       ".xr-var-item > .xr-var-name span {\n",
+       "  background-color: var(--xr-background-color-row-even);\n",
+       "  margin-bottom: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-var-item > .xr-var-name:hover span {\n",
+       "  padding-right: 5px;\n",
+       "}\n",
+       "\n",
+       ".xr-var-list > li:nth-child(odd) > div,\n",
+       ".xr-var-list > li:nth-child(odd) > label,\n",
+       ".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
+       "  background-color: var(--xr-background-color-row-odd);\n",
+       "}\n",
+       "\n",
+       ".xr-var-name {\n",
+       "  grid-column: 1;\n",
+       "}\n",
+       "\n",
+       ".xr-var-dims {\n",
+       "  grid-column: 2;\n",
+       "}\n",
+       "\n",
+       ".xr-var-dtype {\n",
+       "  grid-column: 3;\n",
+       "  text-align: right;\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-var-preview {\n",
+       "  grid-column: 4;\n",
+       "}\n",
+       "\n",
+       ".xr-index-preview {\n",
+       "  grid-column: 2 / 5;\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-var-name,\n",
+       ".xr-var-dims,\n",
+       ".xr-var-dtype,\n",
+       ".xr-preview,\n",
+       ".xr-attrs dt {\n",
+       "  white-space: nowrap;\n",
+       "  overflow: hidden;\n",
+       "  text-overflow: ellipsis;\n",
+       "  padding-right: 10px;\n",
+       "}\n",
+       "\n",
+       ".xr-var-name:hover,\n",
+       ".xr-var-dims:hover,\n",
+       ".xr-var-dtype:hover,\n",
+       ".xr-attrs dt:hover {\n",
+       "  overflow: visible;\n",
+       "  width: auto;\n",
+       "  z-index: 1;\n",
+       "}\n",
+       "\n",
+       ".xr-var-attrs,\n",
+       ".xr-var-data,\n",
+       ".xr-index-data {\n",
+       "  display: none;\n",
+       "  background-color: var(--xr-background-color) !important;\n",
+       "  padding-bottom: 5px !important;\n",
+       "}\n",
+       "\n",
+       ".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
+       ".xr-var-data-in:checked ~ .xr-var-data,\n",
+       ".xr-index-data-in:checked ~ .xr-index-data {\n",
+       "  display: block;\n",
+       "}\n",
+       "\n",
+       ".xr-var-data > table {\n",
+       "  float: right;\n",
+       "}\n",
+       "\n",
+       ".xr-var-name span,\n",
+       ".xr-var-data,\n",
+       ".xr-index-name div,\n",
+       ".xr-index-data,\n",
+       ".xr-attrs {\n",
+       "  padding-left: 25px !important;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs,\n",
+       ".xr-var-attrs,\n",
+       ".xr-var-data,\n",
+       ".xr-index-data {\n",
+       "  grid-column: 1 / -1;\n",
+       "}\n",
+       "\n",
+       "dl.xr-attrs {\n",
+       "  padding: 0;\n",
+       "  margin: 0;\n",
+       "  display: grid;\n",
+       "  grid-template-columns: 125px auto;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs dt,\n",
+       ".xr-attrs dd {\n",
+       "  padding: 0;\n",
+       "  margin: 0;\n",
+       "  float: left;\n",
+       "  padding-right: 10px;\n",
+       "  width: auto;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs dt {\n",
+       "  font-weight: normal;\n",
+       "  grid-column: 1;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs dt:hover span {\n",
+       "  display: inline-block;\n",
+       "  background: var(--xr-background-color);\n",
+       "  padding-right: 10px;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs dd {\n",
+       "  grid-column: 2;\n",
+       "  white-space: pre-wrap;\n",
+       "  word-break: break-all;\n",
+       "}\n",
+       "\n",
+       ".xr-icon-database,\n",
+       ".xr-icon-file-text2,\n",
+       ".xr-no-icon {\n",
+       "  display: inline-block;\n",
+       "  vertical-align: middle;\n",
+       "  width: 1em;\n",
+       "  height: 1.5em !important;\n",
+       "  stroke-width: 0;\n",
+       "  stroke: currentColor;\n",
+       "  fill: currentColor;\n",
+       "}\n",
+       "</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 40MB\n",
+       "Dimensions:    (lat: 89, lon: 180, time: 624, bnds: 2)\n",
+       "Coordinates:\n",
+       "  * lat        (lat) float32 356B 88.0 86.0 84.0 82.0 ... -84.0 -86.0 -88.0\n",
+       "  * lon        (lon) float32 720B 0.0 2.0 4.0 6.0 ... 352.0 354.0 356.0 358.0\n",
+       "  * time       (time) datetime64[ns] 5kB 1970-01-01 1970-02-01 ... 2021-12-01\n",
+       "Dimensions without coordinates: bnds\n",
+       "Data variables:\n",
+       "    time_bnds  (time, bnds) datetime64[ns] 10kB 1970-01-01 ... 2022-01-01\n",
+       "    sst        (time, lat, lon) float32 40MB dask.array&lt;chunksize=(624, 89, 180), meta=np.ndarray&gt;\n",
+       "    lon_bnds   (lon, bnds) float32 1kB -1.0 1.0 1.0 3.0 ... 357.0 357.0 359.0\n",
+       "    lat_bnds   (lat, bnds) float32 712B 89.0 87.0 87.0 ... -87.0 -87.0 -89.0\n",
+       "Attributes: (12/37)\n",
+       "    climatology:               Climatology is based on 1971-2000 SST, Xue, Y....\n",
+       "    description:               In situ data: ICOADS2.5 before 2007 and NCEP i...\n",
+       "    keywords_vocabulary:       NASA Global Change Master Directory (GCMD) Sci...\n",
+       "    keywords:                  Earth Science &gt; Oceans &gt; Ocean Temperature &gt; S...\n",
+       "    instrument:                Conventional thermometers\n",
+       "    source_comment:            SSTs were observed by conventional thermometer...\n",
+       "    ...                        ...\n",
+       "    creator_url_original:      https://www.ncei.noaa.gov\n",
+       "    license:                   No constraints on data access or use\n",
+       "    comment:                   SSTs were observed by conventional thermometer...\n",
+       "    summary:                   ERSST.v5 is developed based on v4 after revisi...\n",
+       "    dataset_title:             NOAA Extended Reconstructed SST V5\n",
+       "    data_modified:             2022-06-07</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-85c20307-6383-4e54-893a-bd0654c042a5' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-85c20307-6383-4e54-893a-bd0654c042a5' class='xr-section-summary'  title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>lat</span>: 89</li><li><span class='xr-has-index'>lon</span>: 180</li><li><span class='xr-has-index'>time</span>: 624</li><li><span>bnds</span>: 2</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-c91c5550-7383-4656-9c5c-7eca69a1d081' class='xr-section-summary-in' type='checkbox'  checked><label for='section-c91c5550-7383-4656-9c5c-7eca69a1d081' class='xr-section-summary' >Coordinates: <span>(3)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>lat</span></div><div class='xr-var-dims'>(lat)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>88.0 86.0 84.0 ... -86.0 -88.0</div><input id='attrs-83416f16-1034-4cfb-b18e-ae3a77266c82' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-83416f16-1034-4cfb-b18e-ae3a77266c82' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-7a5ec36f-cf66-4674-8965-499c6899c39f' class='xr-var-data-in' type='checkbox'><label for='data-7a5ec36f-cf66-4674-8965-499c6899c39f' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>degrees_north</dd><dt><span>long_name :</span></dt><dd>Latitude</dd><dt><span>actual_range :</span></dt><dd>[ 88. -88.]</dd><dt><span>standard_name :</span></dt><dd>latitude</dd><dt><span>axis :</span></dt><dd>Y</dd><dt><span>coordinate_defines :</span></dt><dd>center</dd><dt><span>bounds :</span></dt><dd>lat_bnds</dd></dl></div><div class='xr-var-data'><pre>array([ 88.,  86.,  84.,  82.,  80.,  78.,  76.,  74.,  72.,  70.,  68.,  66.,\n",
+       "        64.,  62.,  60.,  58.,  56.,  54.,  52.,  50.,  48.,  46.,  44.,  42.,\n",
+       "        40.,  38.,  36.,  34.,  32.,  30.,  28.,  26.,  24.,  22.,  20.,  18.,\n",
+       "        16.,  14.,  12.,  10.,   8.,   6.,   4.,   2.,   0.,  -2.,  -4.,  -6.,\n",
+       "        -8., -10., -12., -14., -16., -18., -20., -22., -24., -26., -28., -30.,\n",
+       "       -32., -34., -36., -38., -40., -42., -44., -46., -48., -50., -52., -54.,\n",
+       "       -56., -58., -60., -62., -64., -66., -68., -70., -72., -74., -76., -78.,\n",
+       "       -80., -82., -84., -86., -88.], dtype=float32)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>lon</span></div><div class='xr-var-dims'>(lon)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>0.0 2.0 4.0 ... 354.0 356.0 358.0</div><input id='attrs-902b42db-35d4-409a-94d9-928b91815059' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-902b42db-35d4-409a-94d9-928b91815059' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-1fe44bb6-f7ff-4a77-82d6-23eb317d762f' class='xr-var-data-in' type='checkbox'><label for='data-1fe44bb6-f7ff-4a77-82d6-23eb317d762f' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>degrees_east</dd><dt><span>long_name :</span></dt><dd>Longitude</dd><dt><span>actual_range :</span></dt><dd>[  0. 358.]</dd><dt><span>standard_name :</span></dt><dd>longitude</dd><dt><span>axis :</span></dt><dd>X</dd><dt><span>coordinate_defines :</span></dt><dd>center</dd><dt><span>bounds :</span></dt><dd>lon_bnds</dd></dl></div><div class='xr-var-data'><pre>array([  0.,   2.,   4.,   6.,   8.,  10.,  12.,  14.,  16.,  18.,  20.,  22.,\n",
+       "        24.,  26.,  28.,  30.,  32.,  34.,  36.,  38.,  40.,  42.,  44.,  46.,\n",
+       "        48.,  50.,  52.,  54.,  56.,  58.,  60.,  62.,  64.,  66.,  68.,  70.,\n",
+       "        72.,  74.,  76.,  78.,  80.,  82.,  84.,  86.,  88.,  90.,  92.,  94.,\n",
+       "        96.,  98., 100., 102., 104., 106., 108., 110., 112., 114., 116., 118.,\n",
+       "       120., 122., 124., 126., 128., 130., 132., 134., 136., 138., 140., 142.,\n",
+       "       144., 146., 148., 150., 152., 154., 156., 158., 160., 162., 164., 166.,\n",
+       "       168., 170., 172., 174., 176., 178., 180., 182., 184., 186., 188., 190.,\n",
+       "       192., 194., 196., 198., 200., 202., 204., 206., 208., 210., 212., 214.,\n",
+       "       216., 218., 220., 222., 224., 226., 228., 230., 232., 234., 236., 238.,\n",
+       "       240., 242., 244., 246., 248., 250., 252., 254., 256., 258., 260., 262.,\n",
+       "       264., 266., 268., 270., 272., 274., 276., 278., 280., 282., 284., 286.,\n",
+       "       288., 290., 292., 294., 296., 298., 300., 302., 304., 306., 308., 310.,\n",
+       "       312., 314., 316., 318., 320., 322., 324., 326., 328., 330., 332., 334.,\n",
+       "       336., 338., 340., 342., 344., 346., 348., 350., 352., 354., 356., 358.],\n",
+       "      dtype=float32)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>time</span></div><div class='xr-var-dims'>(time)</div><div class='xr-var-dtype'>datetime64[ns]</div><div class='xr-var-preview xr-preview'>1970-01-01 ... 2021-12-01</div><input id='attrs-e4516ce4-e230-4662-b552-7ad64a8ab342' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-e4516ce4-e230-4662-b552-7ad64a8ab342' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-139e33b0-3346-4615-9404-b4d1ae2bd056' class='xr-var-data-in' type='checkbox'><label for='data-139e33b0-3346-4615-9404-b4d1ae2bd056' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>Time</dd><dt><span>delta_t :</span></dt><dd>0000-01-00 00:00:00</dd><dt><span>avg_period :</span></dt><dd>0000-01-00 00:00:00</dd><dt><span>prev_avg_period :</span></dt><dd>0000-00-07 00:00:00</dd><dt><span>standard_name :</span></dt><dd>time</dd><dt><span>axis :</span></dt><dd>T</dd><dt><span>actual_range :</span></dt><dd>[19723. 81204.]</dd><dt><span>bounds :</span></dt><dd>time_bnds</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;1970-01-01T00:00:00.000000000&#x27;, &#x27;1970-02-01T00:00:00.000000000&#x27;,\n",
+       "       &#x27;1970-03-01T00:00:00.000000000&#x27;, ..., &#x27;2021-10-01T00:00:00.000000000&#x27;,\n",
+       "       &#x27;2021-11-01T00:00:00.000000000&#x27;, &#x27;2021-12-01T00:00:00.000000000&#x27;],\n",
+       "      dtype=&#x27;datetime64[ns]&#x27;)</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-b1e19898-c476-496e-909e-a6227c5db27c' class='xr-section-summary-in' type='checkbox'  checked><label for='section-b1e19898-c476-496e-909e-a6227c5db27c' class='xr-section-summary' >Data variables: <span>(4)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>time_bnds</span></div><div class='xr-var-dims'>(time, bnds)</div><div class='xr-var-dtype'>datetime64[ns]</div><div class='xr-var-preview xr-preview'>1970-01-01 ... 2022-01-01</div><input id='attrs-1a7a15e5-b7ea-43f1-87bf-15ae01d8c2c6' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-1a7a15e5-b7ea-43f1-87bf-15ae01d8c2c6' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-14cf5ccc-e000-48b8-9e5f-9f4797bdd355' class='xr-var-data-in' type='checkbox'><label for='data-14cf5ccc-e000-48b8-9e5f-9f4797bdd355' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>xcdat_bounds :</span></dt><dd>True</dd></dl></div><div class='xr-var-data'><pre>array([[&#x27;1970-01-01T00:00:00.000000000&#x27;, &#x27;1970-02-01T00:00:00.000000000&#x27;],\n",
+       "       [&#x27;1970-02-01T00:00:00.000000000&#x27;, &#x27;1970-03-01T00:00:00.000000000&#x27;],\n",
+       "       [&#x27;1970-03-01T00:00:00.000000000&#x27;, &#x27;1970-04-01T00:00:00.000000000&#x27;],\n",
+       "       ...,\n",
+       "       [&#x27;2021-10-01T00:00:00.000000000&#x27;, &#x27;2021-11-01T00:00:00.000000000&#x27;],\n",
+       "       [&#x27;2021-11-01T00:00:00.000000000&#x27;, &#x27;2021-12-01T00:00:00.000000000&#x27;],\n",
+       "       [&#x27;2021-12-01T00:00:00.000000000&#x27;, &#x27;2022-01-01T00:00:00.000000000&#x27;]],\n",
+       "      dtype=&#x27;datetime64[ns]&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>sst</span></div><div class='xr-var-dims'>(time, lat, lon)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>dask.array&lt;chunksize=(624, 89, 180), meta=np.ndarray&gt;</div><input id='attrs-08f7ea1a-fd27-4994-bb69-704278b4c3bc' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-08f7ea1a-fd27-4994-bb69-704278b4c3bc' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-898d838f-3b01-4d90-b112-e6ebd860a01c' class='xr-var-data-in' type='checkbox'><label for='data-898d838f-3b01-4d90-b112-e6ebd860a01c' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>Monthly Means of Sea Surface Temperature</dd><dt><span>units :</span></dt><dd>degC</dd><dt><span>var_desc :</span></dt><dd>Sea Surface Temperature</dd><dt><span>level_desc :</span></dt><dd>Surface</dd><dt><span>statistic :</span></dt><dd>Mean</dd><dt><span>dataset :</span></dt><dd>NOAA Extended Reconstructed SST V5</dd><dt><span>parent_stat :</span></dt><dd>Individual Values</dd><dt><span>actual_range :</span></dt><dd>[-1.8     42.32636]</dd><dt><span>valid_range :</span></dt><dd>[-1.8 45. ]</dd></dl></div><div class='xr-var-data'><table>\n",
+       "    <tr>\n",
+       "        <td>\n",
+       "            <table style=\"border-collapse: collapse;\">\n",
+       "                <thead>\n",
+       "                    <tr>\n",
+       "                        <td> </td>\n",
+       "                        <th> Array </th>\n",
+       "                        <th> Chunk </th>\n",
+       "                    </tr>\n",
+       "                </thead>\n",
+       "                <tbody>\n",
+       "                    \n",
+       "                    <tr>\n",
+       "                        <th> Bytes </th>\n",
+       "                        <td> 38.13 MiB </td>\n",
+       "                        <td> 38.13 MiB </td>\n",
+       "                    </tr>\n",
+       "                    \n",
+       "                    <tr>\n",
+       "                        <th> Shape </th>\n",
+       "                        <td> (624, 89, 180) </td>\n",
+       "                        <td> (624, 89, 180) </td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <th> Dask graph </th>\n",
+       "                        <td colspan=\"2\"> 1 chunks in 2 graph layers </td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <th> Data type </th>\n",
+       "                        <td colspan=\"2\"> float32 numpy.ndarray </td>\n",
+       "                    </tr>\n",
+       "                </tbody>\n",
+       "            </table>\n",
+       "        </td>\n",
+       "        <td>\n",
+       "        <svg width=\"174\" height=\"161\" style=\"stroke:rgb(0,0,0);stroke-width:1\" >\n",
+       "\n",
+       "  <!-- Horizontal lines -->\n",
+       "  <line x1=\"10\" y1=\"0\" x2=\"80\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"10\" y1=\"40\" x2=\"80\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Vertical lines -->\n",
+       "  <line x1=\"10\" y1=\"0\" x2=\"10\" y2=\"40\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"80\" y1=\"70\" x2=\"80\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Colored Rectangle -->\n",
+       "  <polygon points=\"10.0,0.0 80.58823529411765,70.58823529411765 80.58823529411765,111.04878326244568 10.0,40.46054796832803\" style=\"fill:#ECB172A0;stroke-width:0\"/>\n",
+       "\n",
+       "  <!-- Horizontal lines -->\n",
+       "  <line x1=\"10\" y1=\"0\" x2=\"53\" y2=\"0\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"80\" y1=\"70\" x2=\"124\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Vertical lines -->\n",
+       "  <line x1=\"10\" y1=\"0\" x2=\"80\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"53\" y1=\"0\" x2=\"124\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Colored Rectangle -->\n",
+       "  <polygon points=\"10.0,0.0 53.411877305308934,0.0 124.00011259942659,70.58823529411765 80.58823529411765,70.58823529411765\" style=\"fill:#ECB172A0;stroke-width:0\"/>\n",
+       "\n",
+       "  <!-- Horizontal lines -->\n",
+       "  <line x1=\"80\" y1=\"70\" x2=\"124\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"80\" y1=\"111\" x2=\"124\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Vertical lines -->\n",
+       "  <line x1=\"80\" y1=\"70\" x2=\"80\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"124\" y1=\"70\" x2=\"124\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Colored Rectangle -->\n",
+       "  <polygon points=\"80.58823529411765,70.58823529411765 124.00011259942659,70.58823529411765 124.00011259942659,111.04878326244568 80.58823529411765,111.04878326244568\" style=\"fill:#ECB172A0;stroke-width:0\"/>\n",
+       "\n",
+       "  <!-- Text -->\n",
+       "  <text x=\"102.294174\" y=\"131.048783\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" >180</text>\n",
+       "  <text x=\"144.000113\" y=\"90.818509\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" transform=\"rotate(0,144.000113,90.818509)\">89</text>\n",
+       "  <text x=\"35.294118\" y=\"95.754666\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" transform=\"rotate(45,35.294118,95.754666)\">624</text>\n",
+       "</svg>\n",
+       "        </td>\n",
+       "    </tr>\n",
+       "</table></div></li><li class='xr-var-item'><div class='xr-var-name'><span>lon_bnds</span></div><div class='xr-var-dims'>(lon, bnds)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>-1.0 1.0 1.0 ... 357.0 357.0 359.0</div><input id='attrs-94af746d-2c2b-4208-be81-f12938a158f2' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-94af746d-2c2b-4208-be81-f12938a158f2' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-ec04599f-70ed-4d09-aa5d-d6b33cf8a021' class='xr-var-data-in' type='checkbox'><label for='data-ec04599f-70ed-4d09-aa5d-d6b33cf8a021' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>xcdat_bounds :</span></dt><dd>True</dd></dl></div><div class='xr-var-data'><pre>array([[ -1.,   1.],\n",
+       "       [  1.,   3.],\n",
+       "       [  3.,   5.],\n",
+       "       [  5.,   7.],\n",
+       "       [  7.,   9.],\n",
+       "       [  9.,  11.],\n",
+       "       [ 11.,  13.],\n",
+       "       [ 13.,  15.],\n",
+       "       [ 15.,  17.],\n",
+       "       [ 17.,  19.],\n",
+       "       [ 19.,  21.],\n",
+       "       [ 21.,  23.],\n",
+       "       [ 23.,  25.],\n",
+       "       [ 25.,  27.],\n",
+       "       [ 27.,  29.],\n",
+       "       [ 29.,  31.],\n",
+       "       [ 31.,  33.],\n",
+       "       [ 33.,  35.],\n",
+       "       [ 35.,  37.],\n",
+       "       [ 37.,  39.],\n",
+       "...\n",
+       "       [319., 321.],\n",
+       "       [321., 323.],\n",
+       "       [323., 325.],\n",
+       "       [325., 327.],\n",
+       "       [327., 329.],\n",
+       "       [329., 331.],\n",
+       "       [331., 333.],\n",
+       "       [333., 335.],\n",
+       "       [335., 337.],\n",
+       "       [337., 339.],\n",
+       "       [339., 341.],\n",
+       "       [341., 343.],\n",
+       "       [343., 345.],\n",
+       "       [345., 347.],\n",
+       "       [347., 349.],\n",
+       "       [349., 351.],\n",
+       "       [351., 353.],\n",
+       "       [353., 355.],\n",
+       "       [355., 357.],\n",
+       "       [357., 359.]], dtype=float32)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>lat_bnds</span></div><div class='xr-var-dims'>(lat, bnds)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>89.0 87.0 87.0 ... -87.0 -89.0</div><input id='attrs-f9ba148c-e8b1-46af-90f2-a9ad9990260c' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-f9ba148c-e8b1-46af-90f2-a9ad9990260c' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-ae125bb3-a2ac-4057-9660-1d2007c581e2' class='xr-var-data-in' type='checkbox'><label for='data-ae125bb3-a2ac-4057-9660-1d2007c581e2' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>xcdat_bounds :</span></dt><dd>True</dd></dl></div><div class='xr-var-data'><pre>array([[ 89.,  87.],\n",
+       "       [ 87.,  85.],\n",
+       "       [ 85.,  83.],\n",
+       "       [ 83.,  81.],\n",
+       "       [ 81.,  79.],\n",
+       "       [ 79.,  77.],\n",
+       "       [ 77.,  75.],\n",
+       "       [ 75.,  73.],\n",
+       "       [ 73.,  71.],\n",
+       "       [ 71.,  69.],\n",
+       "       [ 69.,  67.],\n",
+       "       [ 67.,  65.],\n",
+       "       [ 65.,  63.],\n",
+       "       [ 63.,  61.],\n",
+       "       [ 61.,  59.],\n",
+       "       [ 59.,  57.],\n",
+       "       [ 57.,  55.],\n",
+       "       [ 55.,  53.],\n",
+       "       [ 53.,  51.],\n",
+       "       [ 51.,  49.],\n",
+       "...\n",
+       "       [-49., -51.],\n",
+       "       [-51., -53.],\n",
+       "       [-53., -55.],\n",
+       "       [-55., -57.],\n",
+       "       [-57., -59.],\n",
+       "       [-59., -61.],\n",
+       "       [-61., -63.],\n",
+       "       [-63., -65.],\n",
+       "       [-65., -67.],\n",
+       "       [-67., -69.],\n",
+       "       [-69., -71.],\n",
+       "       [-71., -73.],\n",
+       "       [-73., -75.],\n",
+       "       [-75., -77.],\n",
+       "       [-77., -79.],\n",
+       "       [-79., -81.],\n",
+       "       [-81., -83.],\n",
+       "       [-83., -85.],\n",
+       "       [-85., -87.],\n",
+       "       [-87., -89.]], dtype=float32)</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-34f482b8-3f84-4988-b795-6e7104c9af6a' class='xr-section-summary-in' type='checkbox'  ><label for='section-34f482b8-3f84-4988-b795-6e7104c9af6a' class='xr-section-summary' >Indexes: <span>(3)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>lat</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-36750c44-800e-4ba7-9dc6-9b2311a52a57' class='xr-index-data-in' type='checkbox'/><label for='index-36750c44-800e-4ba7-9dc6-9b2311a52a57' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([ 88.0,  86.0,  84.0,  82.0,  80.0,  78.0,  76.0,  74.0,  72.0,  70.0,\n",
+       "        68.0,  66.0,  64.0,  62.0,  60.0,  58.0,  56.0,  54.0,  52.0,  50.0,\n",
+       "        48.0,  46.0,  44.0,  42.0,  40.0,  38.0,  36.0,  34.0,  32.0,  30.0,\n",
+       "        28.0,  26.0,  24.0,  22.0,  20.0,  18.0,  16.0,  14.0,  12.0,  10.0,\n",
+       "         8.0,   6.0,   4.0,   2.0,   0.0,  -2.0,  -4.0,  -6.0,  -8.0, -10.0,\n",
+       "       -12.0, -14.0, -16.0, -18.0, -20.0, -22.0, -24.0, -26.0, -28.0, -30.0,\n",
+       "       -32.0, -34.0, -36.0, -38.0, -40.0, -42.0, -44.0, -46.0, -48.0, -50.0,\n",
+       "       -52.0, -54.0, -56.0, -58.0, -60.0, -62.0, -64.0, -66.0, -68.0, -70.0,\n",
+       "       -72.0, -74.0, -76.0, -78.0, -80.0, -82.0, -84.0, -86.0, -88.0],\n",
+       "      dtype=&#x27;float32&#x27;, name=&#x27;lat&#x27;))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>lon</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-9e32c34a-ccf8-463a-a711-e1c081d5b745' class='xr-index-data-in' type='checkbox'/><label for='index-9e32c34a-ccf8-463a-a711-e1c081d5b745' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([  0.0,   2.0,   4.0,   6.0,   8.0,  10.0,  12.0,  14.0,  16.0,  18.0,\n",
+       "       ...\n",
+       "       340.0, 342.0, 344.0, 346.0, 348.0, 350.0, 352.0, 354.0, 356.0, 358.0],\n",
+       "      dtype=&#x27;float32&#x27;, name=&#x27;lon&#x27;, length=180))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>time</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-e311bf12-306d-4979-8989-74ad5867ca07' class='xr-index-data-in' type='checkbox'/><label for='index-e311bf12-306d-4979-8989-74ad5867ca07' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(DatetimeIndex([&#x27;1970-01-01&#x27;, &#x27;1970-02-01&#x27;, &#x27;1970-03-01&#x27;, &#x27;1970-04-01&#x27;,\n",
+       "               &#x27;1970-05-01&#x27;, &#x27;1970-06-01&#x27;, &#x27;1970-07-01&#x27;, &#x27;1970-08-01&#x27;,\n",
+       "               &#x27;1970-09-01&#x27;, &#x27;1970-10-01&#x27;,\n",
+       "               ...\n",
+       "               &#x27;2021-03-01&#x27;, &#x27;2021-04-01&#x27;, &#x27;2021-05-01&#x27;, &#x27;2021-06-01&#x27;,\n",
+       "               &#x27;2021-07-01&#x27;, &#x27;2021-08-01&#x27;, &#x27;2021-09-01&#x27;, &#x27;2021-10-01&#x27;,\n",
+       "               &#x27;2021-11-01&#x27;, &#x27;2021-12-01&#x27;],\n",
+       "              dtype=&#x27;datetime64[ns]&#x27;, name=&#x27;time&#x27;, length=624, freq=None))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-867982ec-4c39-4481-9b52-2d64b8bc0a92' class='xr-section-summary-in' type='checkbox'  ><label for='section-867982ec-4c39-4481-9b52-2d64b8bc0a92' class='xr-section-summary' >Attributes: <span>(37)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'><dt><span>climatology :</span></dt><dd>Climatology is based on 1971-2000 SST, Xue, Y., T. M. Smith, and R. W. Reynolds, 2003: Interdecadal changes of 30-yr SST normals during 1871.2000. Journal of Climate, 16, 1601-1612.</dd><dt><span>description :</span></dt><dd>In situ data: ICOADS2.5 before 2007 and NCEP in situ data from 2008 to present. Ice data: HadISST ice before 2010 and NCEP ice after 2010.</dd><dt><span>keywords_vocabulary :</span></dt><dd>NASA Global Change Master Directory (GCMD) Science Keywords</dd><dt><span>keywords :</span></dt><dd>Earth Science &gt; Oceans &gt; Ocean Temperature &gt; Sea Surface Temperature &gt;</dd><dt><span>instrument :</span></dt><dd>Conventional thermometers</dd><dt><span>source_comment :</span></dt><dd>SSTs were observed by conventional thermometers in Buckets (insulated or un-insulated canvas and wooded buckets) or Engine Room Intaker</dd><dt><span>geospatial_lon_min :</span></dt><dd>-1.0</dd><dt><span>geospatial_lon_max :</span></dt><dd>359.0</dd><dt><span>geospatial_laty_max :</span></dt><dd>89.0</dd><dt><span>geospatial_laty_min :</span></dt><dd>-89.0</dd><dt><span>geospatial_lat_max :</span></dt><dd>89.0</dd><dt><span>geospatial_lat_min :</span></dt><dd>-89.0</dd><dt><span>geospatial_lat_units :</span></dt><dd>degrees_north</dd><dt><span>geospatial_lon_units :</span></dt><dd>degrees_east</dd><dt><span>cdm_data_type :</span></dt><dd>Grid</dd><dt><span>project :</span></dt><dd>NOAA Extended Reconstructed Sea Surface Temperature (ERSST)</dd><dt><span>original_publisher_url :</span></dt><dd>http://www.ncdc.noaa.gov</dd><dt><span>References :</span></dt><dd>https://www.ncdc.noaa.gov/data-access/marineocean-data/extended-reconstructed-sea-surface-temperature-ersst-v5 at NCEI and http://www.esrl.noaa.gov/psd/data/gridded/data.noaa.ersst.v5.html</dd><dt><span>source :</span></dt><dd>In situ data: ICOADS R3.0 before 2015, NCEP in situ GTS from 2016 to present, and Argo SST from 1999 to present. Ice data: HadISST2 ice before 2015, and NCEP ice after 2015</dd><dt><span>title :</span></dt><dd>NOAA ERSSTv5 (in situ only)</dd><dt><span>history :</span></dt><dd>created 07/2017 by PSD data using NCEI&#x27;s ERSST V5 NetCDF values</dd><dt><span>institution :</span></dt><dd>This version written at NOAA/ESRL PSD: obtained from NOAA/NESDIS/National Centers for Environmental Information and time aggregated. Original Full Source: NOAA/NESDIS/NCEI/CCOG</dd><dt><span>citation :</span></dt><dd>Huang et al, 2017: Extended Reconstructed Sea Surface Temperatures Version 5 (ERSSTv5): Upgrades, Validations, and Intercomparisons. Journal of Climate, https://doi.org/10.1175/JCLI-D-16-0836.1</dd><dt><span>platform :</span></dt><dd>Ship and Buoy SSTs from ICOADS R3.0 and NCEP GTS</dd><dt><span>standard_name_vocabulary :</span></dt><dd>CF Standard Name Table (v40, 25 January 2017)</dd><dt><span>processing_level :</span></dt><dd>NOAA Level 4</dd><dt><span>Conventions :</span></dt><dd>CF-1.6, ACDD-1.3</dd><dt><span>metadata_link :</span></dt><dd>:metadata_link = https://doi.org/10.7289/V5T72FNM (original format)</dd><dt><span>creator_name :</span></dt><dd>Boyin Huang (original)</dd><dt><span>date_created :</span></dt><dd>2017-06-30T12:18:00Z (original)</dd><dt><span>product_version :</span></dt><dd>Version 5</dd><dt><span>creator_url_original :</span></dt><dd>https://www.ncei.noaa.gov</dd><dt><span>license :</span></dt><dd>No constraints on data access or use</dd><dt><span>comment :</span></dt><dd>SSTs were observed by conventional thermometers in Buckets (insulated or un-insulated canvas and wooded buckets), Engine Room Intakers, or floats and drifters</dd><dt><span>summary :</span></dt><dd>ERSST.v5 is developed based on v4 after revisions of 8 parameters using updated data sets and advanced knowledge of ERSST analysis</dd><dt><span>dataset_title :</span></dt><dd>NOAA Extended Reconstructed SST V5</dd><dt><span>data_modified :</span></dt><dd>2022-06-07</dd></dl></div></li></ul></div></div>"
+      ],
+      "text/plain": [
+       "<xarray.Dataset> Size: 40MB\n",
+       "Dimensions:    (lat: 89, lon: 180, time: 624, bnds: 2)\n",
+       "Coordinates:\n",
+       "  * lat        (lat) float32 356B 88.0 86.0 84.0 82.0 ... -84.0 -86.0 -88.0\n",
+       "  * lon        (lon) float32 720B 0.0 2.0 4.0 6.0 ... 352.0 354.0 356.0 358.0\n",
+       "  * time       (time) datetime64[ns] 5kB 1970-01-01 1970-02-01 ... 2021-12-01\n",
+       "Dimensions without coordinates: bnds\n",
+       "Data variables:\n",
+       "    time_bnds  (time, bnds) datetime64[ns] 10kB 1970-01-01 ... 2022-01-01\n",
+       "    sst        (time, lat, lon) float32 40MB dask.array<chunksize=(624, 89, 180), meta=np.ndarray>\n",
+       "    lon_bnds   (lon, bnds) float32 1kB -1.0 1.0 1.0 3.0 ... 357.0 357.0 359.0\n",
+       "    lat_bnds   (lat, bnds) float32 712B 89.0 87.0 87.0 ... -87.0 -87.0 -89.0\n",
+       "Attributes: (12/37)\n",
+       "    climatology:               Climatology is based on 1971-2000 SST, Xue, Y....\n",
+       "    description:               In situ data: ICOADS2.5 before 2007 and NCEP i...\n",
+       "    keywords_vocabulary:       NASA Global Change Master Directory (GCMD) Sci...\n",
+       "    keywords:                  Earth Science > Oceans > Ocean Temperature > S...\n",
+       "    instrument:                Conventional thermometers\n",
+       "    source_comment:            SSTs were observed by conventional thermometer...\n",
+       "    ...                        ...\n",
+       "    creator_url_original:      https://www.ncei.noaa.gov\n",
+       "    license:                   No constraints on data access or use\n",
+       "    comment:                   SSTs were observed by conventional thermometer...\n",
+       "    summary:                   ERSST.v5 is developed based on v4 after revisi...\n",
+       "    dataset_title:             NOAA Extended Reconstructed SST V5\n",
+       "    data_modified:             2022-06-07"
+      ]
+     },
+     "execution_count": 5,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "ds = xc.tutorial.open_dataset(\"ersstv5\", chunks=\"auto\")\n",
     "\n",
@@ -468,9 +1360,687 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 6,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
+       "<defs>\n",
+       "<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
+       "<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
+       "<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
+       "<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
+       "</symbol>\n",
+       "<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
+       "<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
+       "<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
+       "<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
+       "<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
+       "</symbol>\n",
+       "</defs>\n",
+       "</svg>\n",
+       "<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
+       " *\n",
+       " */\n",
+       "\n",
+       ":root {\n",
+       "  --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
+       "  --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
+       "  --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
+       "  --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
+       "  --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
+       "  --xr-background-color: var(--jp-layout-color0, white);\n",
+       "  --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
+       "  --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
+       "}\n",
+       "\n",
+       "html[theme=dark],\n",
+       "html[data-theme=dark],\n",
+       "body[data-theme=dark],\n",
+       "body.vscode-dark {\n",
+       "  --xr-font-color0: rgba(255, 255, 255, 1);\n",
+       "  --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
+       "  --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
+       "  --xr-border-color: #1F1F1F;\n",
+       "  --xr-disabled-color: #515151;\n",
+       "  --xr-background-color: #111111;\n",
+       "  --xr-background-color-row-even: #111111;\n",
+       "  --xr-background-color-row-odd: #313131;\n",
+       "}\n",
+       "\n",
+       ".xr-wrap {\n",
+       "  display: block !important;\n",
+       "  min-width: 300px;\n",
+       "  max-width: 700px;\n",
+       "}\n",
+       "\n",
+       ".xr-text-repr-fallback {\n",
+       "  /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
+       "  display: none;\n",
+       "}\n",
+       "\n",
+       ".xr-header {\n",
+       "  padding-top: 6px;\n",
+       "  padding-bottom: 6px;\n",
+       "  margin-bottom: 4px;\n",
+       "  border-bottom: solid 1px var(--xr-border-color);\n",
+       "}\n",
+       "\n",
+       ".xr-header > div,\n",
+       ".xr-header > ul {\n",
+       "  display: inline;\n",
+       "  margin-top: 0;\n",
+       "  margin-bottom: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-obj-type,\n",
+       ".xr-array-name {\n",
+       "  margin-left: 2px;\n",
+       "  margin-right: 10px;\n",
+       "}\n",
+       "\n",
+       ".xr-obj-type {\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-sections {\n",
+       "  padding-left: 0 !important;\n",
+       "  display: grid;\n",
+       "  grid-template-columns: 150px auto auto 1fr 0 20px 0 20px;\n",
+       "}\n",
+       "\n",
+       ".xr-section-item {\n",
+       "  display: contents;\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input {\n",
+       "  display: inline-block;\n",
+       "  opacity: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input + label {\n",
+       "  color: var(--xr-disabled-color);\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input:enabled + label {\n",
+       "  cursor: pointer;\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input:focus + label {\n",
+       "  border: 2px solid var(--xr-font-color0);\n",
+       "}\n",
+       "\n",
+       ".xr-section-item input:enabled + label:hover {\n",
+       "  color: var(--xr-font-color0);\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary {\n",
+       "  grid-column: 1;\n",
+       "  color: var(--xr-font-color2);\n",
+       "  font-weight: 500;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary > span {\n",
+       "  display: inline-block;\n",
+       "  padding-left: 0.5em;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:disabled + label {\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in + label:before {\n",
+       "  display: inline-block;\n",
+       "  content: '►';\n",
+       "  font-size: 11px;\n",
+       "  width: 15px;\n",
+       "  text-align: center;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:disabled + label:before {\n",
+       "  color: var(--xr-disabled-color);\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:checked + label:before {\n",
+       "  content: '▼';\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:checked + label > span {\n",
+       "  display: none;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary,\n",
+       ".xr-section-inline-details {\n",
+       "  padding-top: 4px;\n",
+       "  padding-bottom: 4px;\n",
+       "}\n",
+       "\n",
+       ".xr-section-inline-details {\n",
+       "  grid-column: 2 / -1;\n",
+       "}\n",
+       "\n",
+       ".xr-section-details {\n",
+       "  display: none;\n",
+       "  grid-column: 1 / -1;\n",
+       "  margin-bottom: 5px;\n",
+       "}\n",
+       "\n",
+       ".xr-section-summary-in:checked ~ .xr-section-details {\n",
+       "  display: contents;\n",
+       "}\n",
+       "\n",
+       ".xr-array-wrap {\n",
+       "  grid-column: 1 / -1;\n",
+       "  display: grid;\n",
+       "  grid-template-columns: 20px auto;\n",
+       "}\n",
+       "\n",
+       ".xr-array-wrap > label {\n",
+       "  grid-column: 1;\n",
+       "  vertical-align: top;\n",
+       "}\n",
+       "\n",
+       ".xr-preview {\n",
+       "  color: var(--xr-font-color3);\n",
+       "}\n",
+       "\n",
+       ".xr-array-preview,\n",
+       ".xr-array-data {\n",
+       "  padding: 0 5px !important;\n",
+       "  grid-column: 2;\n",
+       "}\n",
+       "\n",
+       ".xr-array-data,\n",
+       ".xr-array-in:checked ~ .xr-array-preview {\n",
+       "  display: none;\n",
+       "}\n",
+       "\n",
+       ".xr-array-in:checked ~ .xr-array-data,\n",
+       ".xr-array-preview {\n",
+       "  display: inline-block;\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list {\n",
+       "  display: inline-block !important;\n",
+       "  list-style: none;\n",
+       "  padding: 0 !important;\n",
+       "  margin: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list li {\n",
+       "  display: inline-block;\n",
+       "  padding: 0;\n",
+       "  margin: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list:before {\n",
+       "  content: '(';\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list:after {\n",
+       "  content: ')';\n",
+       "}\n",
+       "\n",
+       ".xr-dim-list li:not(:last-child):after {\n",
+       "  content: ',';\n",
+       "  padding-right: 5px;\n",
+       "}\n",
+       "\n",
+       ".xr-has-index {\n",
+       "  font-weight: bold;\n",
+       "}\n",
+       "\n",
+       ".xr-var-list,\n",
+       ".xr-var-item {\n",
+       "  display: contents;\n",
+       "}\n",
+       "\n",
+       ".xr-var-item > div,\n",
+       ".xr-var-item label,\n",
+       ".xr-var-item > .xr-var-name span {\n",
+       "  background-color: var(--xr-background-color-row-even);\n",
+       "  margin-bottom: 0;\n",
+       "}\n",
+       "\n",
+       ".xr-var-item > .xr-var-name:hover span {\n",
+       "  padding-right: 5px;\n",
+       "}\n",
+       "\n",
+       ".xr-var-list > li:nth-child(odd) > div,\n",
+       ".xr-var-list > li:nth-child(odd) > label,\n",
+       ".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
+       "  background-color: var(--xr-background-color-row-odd);\n",
+       "}\n",
+       "\n",
+       ".xr-var-name {\n",
+       "  grid-column: 1;\n",
+       "}\n",
+       "\n",
+       ".xr-var-dims {\n",
+       "  grid-column: 2;\n",
+       "}\n",
+       "\n",
+       ".xr-var-dtype {\n",
+       "  grid-column: 3;\n",
+       "  text-align: right;\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-var-preview {\n",
+       "  grid-column: 4;\n",
+       "}\n",
+       "\n",
+       ".xr-index-preview {\n",
+       "  grid-column: 2 / 5;\n",
+       "  color: var(--xr-font-color2);\n",
+       "}\n",
+       "\n",
+       ".xr-var-name,\n",
+       ".xr-var-dims,\n",
+       ".xr-var-dtype,\n",
+       ".xr-preview,\n",
+       ".xr-attrs dt {\n",
+       "  white-space: nowrap;\n",
+       "  overflow: hidden;\n",
+       "  text-overflow: ellipsis;\n",
+       "  padding-right: 10px;\n",
+       "}\n",
+       "\n",
+       ".xr-var-name:hover,\n",
+       ".xr-var-dims:hover,\n",
+       ".xr-var-dtype:hover,\n",
+       ".xr-attrs dt:hover {\n",
+       "  overflow: visible;\n",
+       "  width: auto;\n",
+       "  z-index: 1;\n",
+       "}\n",
+       "\n",
+       ".xr-var-attrs,\n",
+       ".xr-var-data,\n",
+       ".xr-index-data {\n",
+       "  display: none;\n",
+       "  background-color: var(--xr-background-color) !important;\n",
+       "  padding-bottom: 5px !important;\n",
+       "}\n",
+       "\n",
+       ".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
+       ".xr-var-data-in:checked ~ .xr-var-data,\n",
+       ".xr-index-data-in:checked ~ .xr-index-data {\n",
+       "  display: block;\n",
+       "}\n",
+       "\n",
+       ".xr-var-data > table {\n",
+       "  float: right;\n",
+       "}\n",
+       "\n",
+       ".xr-var-name span,\n",
+       ".xr-var-data,\n",
+       ".xr-index-name div,\n",
+       ".xr-index-data,\n",
+       ".xr-attrs {\n",
+       "  padding-left: 25px !important;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs,\n",
+       ".xr-var-attrs,\n",
+       ".xr-var-data,\n",
+       ".xr-index-data {\n",
+       "  grid-column: 1 / -1;\n",
+       "}\n",
+       "\n",
+       "dl.xr-attrs {\n",
+       "  padding: 0;\n",
+       "  margin: 0;\n",
+       "  display: grid;\n",
+       "  grid-template-columns: 125px auto;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs dt,\n",
+       ".xr-attrs dd {\n",
+       "  padding: 0;\n",
+       "  margin: 0;\n",
+       "  float: left;\n",
+       "  padding-right: 10px;\n",
+       "  width: auto;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs dt {\n",
+       "  font-weight: normal;\n",
+       "  grid-column: 1;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs dt:hover span {\n",
+       "  display: inline-block;\n",
+       "  background: var(--xr-background-color);\n",
+       "  padding-right: 10px;\n",
+       "}\n",
+       "\n",
+       ".xr-attrs dd {\n",
+       "  grid-column: 2;\n",
+       "  white-space: pre-wrap;\n",
+       "  word-break: break-all;\n",
+       "}\n",
+       "\n",
+       ".xr-icon-database,\n",
+       ".xr-icon-file-text2,\n",
+       ".xr-no-icon {\n",
+       "  display: inline-block;\n",
+       "  vertical-align: middle;\n",
+       "  width: 1em;\n",
+       "  height: 1.5em !important;\n",
+       "  stroke-width: 0;\n",
+       "  stroke: currentColor;\n",
+       "  fill: currentColor;\n",
+       "}\n",
+       "</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 80MB\n",
+       "Dimensions:   (lat: 89, lon: 180, bnds: 2, time: 624)\n",
+       "Coordinates:\n",
+       "  * lat       (lat) float32 356B 88.0 86.0 84.0 82.0 ... -82.0 -84.0 -86.0 -88.0\n",
+       "  * lon       (lon) float32 720B 0.0 2.0 4.0 6.0 8.0 ... 352.0 354.0 356.0 358.0\n",
+       "  * time      (time) object 5kB 1970-01-01 00:00:00 ... 2021-12-01 00:00:00\n",
+       "Dimensions without coordinates: bnds\n",
+       "Data variables:\n",
+       "    lon_bnds  (lon, bnds) float32 1kB -1.0 1.0 1.0 3.0 ... 357.0 357.0 359.0\n",
+       "    lat_bnds  (lat, bnds) float32 712B 89.0 87.0 87.0 85.0 ... -87.0 -87.0 -89.0\n",
+       "    sst       (time, lat, lon) float64 80MB dask.array&lt;chunksize=(1, 89, 180), meta=np.ndarray&gt;\n",
+       "Attributes: (12/37)\n",
+       "    climatology:               Climatology is based on 1971-2000 SST, Xue, Y....\n",
+       "    description:               In situ data: ICOADS2.5 before 2007 and NCEP i...\n",
+       "    keywords_vocabulary:       NASA Global Change Master Directory (GCMD) Sci...\n",
+       "    keywords:                  Earth Science &gt; Oceans &gt; Ocean Temperature &gt; S...\n",
+       "    instrument:                Conventional thermometers\n",
+       "    source_comment:            SSTs were observed by conventional thermometer...\n",
+       "    ...                        ...\n",
+       "    creator_url_original:      https://www.ncei.noaa.gov\n",
+       "    license:                   No constraints on data access or use\n",
+       "    comment:                   SSTs were observed by conventional thermometer...\n",
+       "    summary:                   ERSST.v5 is developed based on v4 after revisi...\n",
+       "    dataset_title:             NOAA Extended Reconstructed SST V5\n",
+       "    data_modified:             2022-06-07</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-2f54c256-2e5c-4cc5-a097-bc891d6d892f' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-2f54c256-2e5c-4cc5-a097-bc891d6d892f' class='xr-section-summary'  title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>lat</span>: 89</li><li><span class='xr-has-index'>lon</span>: 180</li><li><span>bnds</span>: 2</li><li><span class='xr-has-index'>time</span>: 624</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-a5696254-5ce3-4e8e-8e2a-e2a148adfd7a' class='xr-section-summary-in' type='checkbox'  checked><label for='section-a5696254-5ce3-4e8e-8e2a-e2a148adfd7a' class='xr-section-summary' >Coordinates: <span>(3)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>lat</span></div><div class='xr-var-dims'>(lat)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>88.0 86.0 84.0 ... -86.0 -88.0</div><input id='attrs-6fed684a-207e-4a69-91dd-fa01bc2229d2' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-6fed684a-207e-4a69-91dd-fa01bc2229d2' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-383d4a2d-da81-4513-8577-a669e7c794ff' class='xr-var-data-in' type='checkbox'><label for='data-383d4a2d-da81-4513-8577-a669e7c794ff' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>degrees_north</dd><dt><span>long_name :</span></dt><dd>Latitude</dd><dt><span>actual_range :</span></dt><dd>[ 88. -88.]</dd><dt><span>standard_name :</span></dt><dd>latitude</dd><dt><span>axis :</span></dt><dd>Y</dd><dt><span>coordinate_defines :</span></dt><dd>center</dd><dt><span>bounds :</span></dt><dd>lat_bnds</dd></dl></div><div class='xr-var-data'><pre>array([ 88.,  86.,  84.,  82.,  80.,  78.,  76.,  74.,  72.,  70.,  68.,  66.,\n",
+       "        64.,  62.,  60.,  58.,  56.,  54.,  52.,  50.,  48.,  46.,  44.,  42.,\n",
+       "        40.,  38.,  36.,  34.,  32.,  30.,  28.,  26.,  24.,  22.,  20.,  18.,\n",
+       "        16.,  14.,  12.,  10.,   8.,   6.,   4.,   2.,   0.,  -2.,  -4.,  -6.,\n",
+       "        -8., -10., -12., -14., -16., -18., -20., -22., -24., -26., -28., -30.,\n",
+       "       -32., -34., -36., -38., -40., -42., -44., -46., -48., -50., -52., -54.,\n",
+       "       -56., -58., -60., -62., -64., -66., -68., -70., -72., -74., -76., -78.,\n",
+       "       -80., -82., -84., -86., -88.], dtype=float32)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>lon</span></div><div class='xr-var-dims'>(lon)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>0.0 2.0 4.0 ... 354.0 356.0 358.0</div><input id='attrs-bf846f79-8795-438c-b970-5e67d23d2107' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-bf846f79-8795-438c-b970-5e67d23d2107' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-884e8085-1f58-4bbc-8366-4e8767338837' class='xr-var-data-in' type='checkbox'><label for='data-884e8085-1f58-4bbc-8366-4e8767338837' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>degrees_east</dd><dt><span>long_name :</span></dt><dd>Longitude</dd><dt><span>actual_range :</span></dt><dd>[  0. 358.]</dd><dt><span>standard_name :</span></dt><dd>longitude</dd><dt><span>axis :</span></dt><dd>X</dd><dt><span>coordinate_defines :</span></dt><dd>center</dd><dt><span>bounds :</span></dt><dd>lon_bnds</dd></dl></div><div class='xr-var-data'><pre>array([  0.,   2.,   4.,   6.,   8.,  10.,  12.,  14.,  16.,  18.,  20.,  22.,\n",
+       "        24.,  26.,  28.,  30.,  32.,  34.,  36.,  38.,  40.,  42.,  44.,  46.,\n",
+       "        48.,  50.,  52.,  54.,  56.,  58.,  60.,  62.,  64.,  66.,  68.,  70.,\n",
+       "        72.,  74.,  76.,  78.,  80.,  82.,  84.,  86.,  88.,  90.,  92.,  94.,\n",
+       "        96.,  98., 100., 102., 104., 106., 108., 110., 112., 114., 116., 118.,\n",
+       "       120., 122., 124., 126., 128., 130., 132., 134., 136., 138., 140., 142.,\n",
+       "       144., 146., 148., 150., 152., 154., 156., 158., 160., 162., 164., 166.,\n",
+       "       168., 170., 172., 174., 176., 178., 180., 182., 184., 186., 188., 190.,\n",
+       "       192., 194., 196., 198., 200., 202., 204., 206., 208., 210., 212., 214.,\n",
+       "       216., 218., 220., 222., 224., 226., 228., 230., 232., 234., 236., 238.,\n",
+       "       240., 242., 244., 246., 248., 250., 252., 254., 256., 258., 260., 262.,\n",
+       "       264., 266., 268., 270., 272., 274., 276., 278., 280., 282., 284., 286.,\n",
+       "       288., 290., 292., 294., 296., 298., 300., 302., 304., 306., 308., 310.,\n",
+       "       312., 314., 316., 318., 320., 322., 324., 326., 328., 330., 332., 334.,\n",
+       "       336., 338., 340., 342., 344., 346., 348., 350., 352., 354., 356., 358.],\n",
+       "      dtype=float32)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>time</span></div><div class='xr-var-dims'>(time)</div><div class='xr-var-dtype'>object</div><div class='xr-var-preview xr-preview'>1970-01-01 00:00:00 ... 2021-12-...</div><input id='attrs-dc5804df-d6f3-4768-9504-390431599c71' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-dc5804df-d6f3-4768-9504-390431599c71' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-bf73d305-999a-4564-b6ef-5f453bef40b2' class='xr-var-data-in' type='checkbox'><label for='data-bf73d305-999a-4564-b6ef-5f453bef40b2' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>Time</dd><dt><span>delta_t :</span></dt><dd>0000-01-00 00:00:00</dd><dt><span>avg_period :</span></dt><dd>0000-01-00 00:00:00</dd><dt><span>prev_avg_period :</span></dt><dd>0000-00-07 00:00:00</dd><dt><span>standard_name :</span></dt><dd>time</dd><dt><span>axis :</span></dt><dd>T</dd><dt><span>actual_range :</span></dt><dd>[19723. 81204.]</dd><dt><span>bounds :</span></dt><dd>time_bnds</dd></dl></div><div class='xr-var-data'><pre>array([cftime.DatetimeProlepticGregorian(1970, 1, 1, 0, 0, 0, 0, has_year_zero=True),\n",
+       "       cftime.DatetimeProlepticGregorian(1970, 2, 1, 0, 0, 0, 0, has_year_zero=True),\n",
+       "       cftime.DatetimeProlepticGregorian(1970, 3, 1, 0, 0, 0, 0, has_year_zero=True),\n",
+       "       ...,\n",
+       "       cftime.DatetimeProlepticGregorian(2021, 10, 1, 0, 0, 0, 0, has_year_zero=True),\n",
+       "       cftime.DatetimeProlepticGregorian(2021, 11, 1, 0, 0, 0, 0, has_year_zero=True),\n",
+       "       cftime.DatetimeProlepticGregorian(2021, 12, 1, 0, 0, 0, 0, has_year_zero=True)],\n",
+       "      dtype=object)</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-205e6aa7-7216-4538-9c83-21ae8ae2d9f4' class='xr-section-summary-in' type='checkbox'  checked><label for='section-205e6aa7-7216-4538-9c83-21ae8ae2d9f4' class='xr-section-summary' >Data variables: <span>(3)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>lon_bnds</span></div><div class='xr-var-dims'>(lon, bnds)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>-1.0 1.0 1.0 ... 357.0 357.0 359.0</div><input id='attrs-b9fa3ea6-3752-4a9b-9653-eb85213574e7' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-b9fa3ea6-3752-4a9b-9653-eb85213574e7' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-3912016b-5866-4992-a1b2-9708a53ffa4f' class='xr-var-data-in' type='checkbox'><label for='data-3912016b-5866-4992-a1b2-9708a53ffa4f' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>xcdat_bounds :</span></dt><dd>True</dd></dl></div><div class='xr-var-data'><pre>array([[ -1.,   1.],\n",
+       "       [  1.,   3.],\n",
+       "       [  3.,   5.],\n",
+       "       [  5.,   7.],\n",
+       "       [  7.,   9.],\n",
+       "       [  9.,  11.],\n",
+       "       [ 11.,  13.],\n",
+       "       [ 13.,  15.],\n",
+       "       [ 15.,  17.],\n",
+       "       [ 17.,  19.],\n",
+       "       [ 19.,  21.],\n",
+       "       [ 21.,  23.],\n",
+       "       [ 23.,  25.],\n",
+       "       [ 25.,  27.],\n",
+       "       [ 27.,  29.],\n",
+       "       [ 29.,  31.],\n",
+       "       [ 31.,  33.],\n",
+       "       [ 33.,  35.],\n",
+       "       [ 35.,  37.],\n",
+       "       [ 37.,  39.],\n",
+       "...\n",
+       "       [319., 321.],\n",
+       "       [321., 323.],\n",
+       "       [323., 325.],\n",
+       "       [325., 327.],\n",
+       "       [327., 329.],\n",
+       "       [329., 331.],\n",
+       "       [331., 333.],\n",
+       "       [333., 335.],\n",
+       "       [335., 337.],\n",
+       "       [337., 339.],\n",
+       "       [339., 341.],\n",
+       "       [341., 343.],\n",
+       "       [343., 345.],\n",
+       "       [345., 347.],\n",
+       "       [347., 349.],\n",
+       "       [349., 351.],\n",
+       "       [351., 353.],\n",
+       "       [353., 355.],\n",
+       "       [355., 357.],\n",
+       "       [357., 359.]], dtype=float32)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>lat_bnds</span></div><div class='xr-var-dims'>(lat, bnds)</div><div class='xr-var-dtype'>float32</div><div class='xr-var-preview xr-preview'>89.0 87.0 87.0 ... -87.0 -89.0</div><input id='attrs-c98fd4a9-3d9b-4a4d-bb13-fa640f4a2416' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-c98fd4a9-3d9b-4a4d-bb13-fa640f4a2416' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-061f0096-d87f-46b6-b7ea-58d5dd03f2fb' class='xr-var-data-in' type='checkbox'><label for='data-061f0096-d87f-46b6-b7ea-58d5dd03f2fb' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>xcdat_bounds :</span></dt><dd>True</dd></dl></div><div class='xr-var-data'><pre>array([[ 89.,  87.],\n",
+       "       [ 87.,  85.],\n",
+       "       [ 85.,  83.],\n",
+       "       [ 83.,  81.],\n",
+       "       [ 81.,  79.],\n",
+       "       [ 79.,  77.],\n",
+       "       [ 77.,  75.],\n",
+       "       [ 75.,  73.],\n",
+       "       [ 73.,  71.],\n",
+       "       [ 71.,  69.],\n",
+       "       [ 69.,  67.],\n",
+       "       [ 67.,  65.],\n",
+       "       [ 65.,  63.],\n",
+       "       [ 63.,  61.],\n",
+       "       [ 61.,  59.],\n",
+       "       [ 59.,  57.],\n",
+       "       [ 57.,  55.],\n",
+       "       [ 55.,  53.],\n",
+       "       [ 53.,  51.],\n",
+       "       [ 51.,  49.],\n",
+       "...\n",
+       "       [-49., -51.],\n",
+       "       [-51., -53.],\n",
+       "       [-53., -55.],\n",
+       "       [-55., -57.],\n",
+       "       [-57., -59.],\n",
+       "       [-59., -61.],\n",
+       "       [-61., -63.],\n",
+       "       [-63., -65.],\n",
+       "       [-65., -67.],\n",
+       "       [-67., -69.],\n",
+       "       [-69., -71.],\n",
+       "       [-71., -73.],\n",
+       "       [-73., -75.],\n",
+       "       [-75., -77.],\n",
+       "       [-77., -79.],\n",
+       "       [-79., -81.],\n",
+       "       [-81., -83.],\n",
+       "       [-83., -85.],\n",
+       "       [-85., -87.],\n",
+       "       [-87., -89.]], dtype=float32)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>sst</span></div><div class='xr-var-dims'>(time, lat, lon)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>dask.array&lt;chunksize=(1, 89, 180), meta=np.ndarray&gt;</div><input id='attrs-b3c5113f-53dd-434c-abbf-6e9a29a7bd60' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-b3c5113f-53dd-434c-abbf-6e9a29a7bd60' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-b9d5e026-22e4-4f01-a7c4-38b349814f64' class='xr-var-data-in' type='checkbox'><label for='data-b9d5e026-22e4-4f01-a7c4-38b349814f64' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>Monthly Means of Sea Surface Temperature</dd><dt><span>units :</span></dt><dd>degC</dd><dt><span>var_desc :</span></dt><dd>Sea Surface Temperature</dd><dt><span>level_desc :</span></dt><dd>Surface</dd><dt><span>statistic :</span></dt><dd>Mean</dd><dt><span>dataset :</span></dt><dd>NOAA Extended Reconstructed SST V5</dd><dt><span>parent_stat :</span></dt><dd>Individual Values</dd><dt><span>actual_range :</span></dt><dd>[-1.8     42.32636]</dd><dt><span>valid_range :</span></dt><dd>[-1.8 45. ]</dd><dt><span>operation :</span></dt><dd>temporal_avg</dd><dt><span>mode :</span></dt><dd>group_average</dd><dt><span>freq :</span></dt><dd>month</dd><dt><span>weighted :</span></dt><dd>True</dd></dl></div><div class='xr-var-data'><table>\n",
+       "    <tr>\n",
+       "        <td>\n",
+       "            <table style=\"border-collapse: collapse;\">\n",
+       "                <thead>\n",
+       "                    <tr>\n",
+       "                        <td> </td>\n",
+       "                        <th> Array </th>\n",
+       "                        <th> Chunk </th>\n",
+       "                    </tr>\n",
+       "                </thead>\n",
+       "                <tbody>\n",
+       "                    \n",
+       "                    <tr>\n",
+       "                        <th> Bytes </th>\n",
+       "                        <td> 76.27 MiB </td>\n",
+       "                        <td> 125.16 kiB </td>\n",
+       "                    </tr>\n",
+       "                    \n",
+       "                    <tr>\n",
+       "                        <th> Shape </th>\n",
+       "                        <td> (624, 89, 180) </td>\n",
+       "                        <td> (1, 89, 180) </td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <th> Dask graph </th>\n",
+       "                        <td colspan=\"2\"> 624 chunks in 6251 graph layers </td>\n",
+       "                    </tr>\n",
+       "                    <tr>\n",
+       "                        <th> Data type </th>\n",
+       "                        <td colspan=\"2\"> float64 numpy.ndarray </td>\n",
+       "                    </tr>\n",
+       "                </tbody>\n",
+       "            </table>\n",
+       "        </td>\n",
+       "        <td>\n",
+       "        <svg width=\"174\" height=\"161\" style=\"stroke:rgb(0,0,0);stroke-width:1\" >\n",
+       "\n",
+       "  <!-- Horizontal lines -->\n",
+       "  <line x1=\"10\" y1=\"0\" x2=\"80\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"10\" y1=\"40\" x2=\"80\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Vertical lines -->\n",
+       "  <line x1=\"10\" y1=\"0\" x2=\"10\" y2=\"40\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"13\" y1=\"3\" x2=\"13\" y2=\"44\" />\n",
+       "  <line x1=\"17\" y1=\"7\" x2=\"17\" y2=\"47\" />\n",
+       "  <line x1=\"21\" y1=\"11\" x2=\"21\" y2=\"51\" />\n",
+       "  <line x1=\"24\" y1=\"14\" x2=\"24\" y2=\"55\" />\n",
+       "  <line x1=\"28\" y1=\"18\" x2=\"28\" y2=\"59\" />\n",
+       "  <line x1=\"32\" y1=\"22\" x2=\"32\" y2=\"62\" />\n",
+       "  <line x1=\"35\" y1=\"25\" x2=\"35\" y2=\"66\" />\n",
+       "  <line x1=\"39\" y1=\"29\" x2=\"39\" y2=\"70\" />\n",
+       "  <line x1=\"43\" y1=\"33\" x2=\"43\" y2=\"73\" />\n",
+       "  <line x1=\"47\" y1=\"37\" x2=\"47\" y2=\"77\" />\n",
+       "  <line x1=\"50\" y1=\"40\" x2=\"50\" y2=\"81\" />\n",
+       "  <line x1=\"54\" y1=\"44\" x2=\"54\" y2=\"85\" />\n",
+       "  <line x1=\"58\" y1=\"48\" x2=\"58\" y2=\"88\" />\n",
+       "  <line x1=\"61\" y1=\"51\" x2=\"61\" y2=\"92\" />\n",
+       "  <line x1=\"65\" y1=\"55\" x2=\"65\" y2=\"96\" />\n",
+       "  <line x1=\"69\" y1=\"59\" x2=\"69\" y2=\"99\" />\n",
+       "  <line x1=\"73\" y1=\"63\" x2=\"73\" y2=\"103\" />\n",
+       "  <line x1=\"76\" y1=\"66\" x2=\"76\" y2=\"107\" />\n",
+       "  <line x1=\"80\" y1=\"70\" x2=\"80\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Colored Rectangle -->\n",
+       "  <polygon points=\"10.0,0.0 80.58823529411765,70.58823529411765 80.58823529411765,111.04878326244568 10.0,40.46054796832803\" style=\"fill:#8B4903A0;stroke-width:0\"/>\n",
+       "\n",
+       "  <!-- Horizontal lines -->\n",
+       "  <line x1=\"10\" y1=\"0\" x2=\"53\" y2=\"0\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"13\" y1=\"3\" x2=\"57\" y2=\"3\" />\n",
+       "  <line x1=\"17\" y1=\"7\" x2=\"60\" y2=\"7\" />\n",
+       "  <line x1=\"21\" y1=\"11\" x2=\"64\" y2=\"11\" />\n",
+       "  <line x1=\"24\" y1=\"14\" x2=\"68\" y2=\"14\" />\n",
+       "  <line x1=\"28\" y1=\"18\" x2=\"71\" y2=\"18\" />\n",
+       "  <line x1=\"32\" y1=\"22\" x2=\"75\" y2=\"22\" />\n",
+       "  <line x1=\"35\" y1=\"25\" x2=\"79\" y2=\"25\" />\n",
+       "  <line x1=\"39\" y1=\"29\" x2=\"83\" y2=\"29\" />\n",
+       "  <line x1=\"43\" y1=\"33\" x2=\"86\" y2=\"33\" />\n",
+       "  <line x1=\"47\" y1=\"37\" x2=\"90\" y2=\"37\" />\n",
+       "  <line x1=\"50\" y1=\"40\" x2=\"94\" y2=\"40\" />\n",
+       "  <line x1=\"54\" y1=\"44\" x2=\"97\" y2=\"44\" />\n",
+       "  <line x1=\"58\" y1=\"48\" x2=\"101\" y2=\"48\" />\n",
+       "  <line x1=\"61\" y1=\"51\" x2=\"105\" y2=\"51\" />\n",
+       "  <line x1=\"65\" y1=\"55\" x2=\"109\" y2=\"55\" />\n",
+       "  <line x1=\"69\" y1=\"59\" x2=\"112\" y2=\"59\" />\n",
+       "  <line x1=\"73\" y1=\"63\" x2=\"116\" y2=\"63\" />\n",
+       "  <line x1=\"76\" y1=\"66\" x2=\"120\" y2=\"66\" />\n",
+       "  <line x1=\"80\" y1=\"70\" x2=\"124\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Vertical lines -->\n",
+       "  <line x1=\"10\" y1=\"0\" x2=\"80\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"53\" y1=\"0\" x2=\"124\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Colored Rectangle -->\n",
+       "  <polygon points=\"10.0,0.0 53.411877305308934,0.0 124.00011259942659,70.58823529411765 80.58823529411765,70.58823529411765\" style=\"fill:#8B4903A0;stroke-width:0\"/>\n",
+       "\n",
+       "  <!-- Horizontal lines -->\n",
+       "  <line x1=\"80\" y1=\"70\" x2=\"124\" y2=\"70\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"80\" y1=\"111\" x2=\"124\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Vertical lines -->\n",
+       "  <line x1=\"80\" y1=\"70\" x2=\"80\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "  <line x1=\"124\" y1=\"70\" x2=\"124\" y2=\"111\" style=\"stroke-width:2\" />\n",
+       "\n",
+       "  <!-- Colored Rectangle -->\n",
+       "  <polygon points=\"80.58823529411765,70.58823529411765 124.00011259942659,70.58823529411765 124.00011259942659,111.04878326244568 80.58823529411765,111.04878326244568\" style=\"fill:#ECB172A0;stroke-width:0\"/>\n",
+       "\n",
+       "  <!-- Text -->\n",
+       "  <text x=\"102.294174\" y=\"131.048783\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" >180</text>\n",
+       "  <text x=\"144.000113\" y=\"90.818509\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" transform=\"rotate(0,144.000113,90.818509)\">89</text>\n",
+       "  <text x=\"35.294118\" y=\"95.754666\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" transform=\"rotate(45,35.294118,95.754666)\">624</text>\n",
+       "</svg>\n",
+       "        </td>\n",
+       "    </tr>\n",
+       "</table></div></li></ul></div></li><li class='xr-section-item'><input id='section-832c3d4f-1f8e-46cd-bacf-f72d99701813' class='xr-section-summary-in' type='checkbox'  ><label for='section-832c3d4f-1f8e-46cd-bacf-f72d99701813' class='xr-section-summary' >Indexes: <span>(3)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>lat</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-8a3a160b-bc36-4e3a-8972-ce110ba30923' class='xr-index-data-in' type='checkbox'/><label for='index-8a3a160b-bc36-4e3a-8972-ce110ba30923' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([ 88.0,  86.0,  84.0,  82.0,  80.0,  78.0,  76.0,  74.0,  72.0,  70.0,\n",
+       "        68.0,  66.0,  64.0,  62.0,  60.0,  58.0,  56.0,  54.0,  52.0,  50.0,\n",
+       "        48.0,  46.0,  44.0,  42.0,  40.0,  38.0,  36.0,  34.0,  32.0,  30.0,\n",
+       "        28.0,  26.0,  24.0,  22.0,  20.0,  18.0,  16.0,  14.0,  12.0,  10.0,\n",
+       "         8.0,   6.0,   4.0,   2.0,   0.0,  -2.0,  -4.0,  -6.0,  -8.0, -10.0,\n",
+       "       -12.0, -14.0, -16.0, -18.0, -20.0, -22.0, -24.0, -26.0, -28.0, -30.0,\n",
+       "       -32.0, -34.0, -36.0, -38.0, -40.0, -42.0, -44.0, -46.0, -48.0, -50.0,\n",
+       "       -52.0, -54.0, -56.0, -58.0, -60.0, -62.0, -64.0, -66.0, -68.0, -70.0,\n",
+       "       -72.0, -74.0, -76.0, -78.0, -80.0, -82.0, -84.0, -86.0, -88.0],\n",
+       "      dtype=&#x27;float32&#x27;, name=&#x27;lat&#x27;))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>lon</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-5441da58-2031-4d00-9531-0aa446b9156d' class='xr-index-data-in' type='checkbox'/><label for='index-5441da58-2031-4d00-9531-0aa446b9156d' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([  0.0,   2.0,   4.0,   6.0,   8.0,  10.0,  12.0,  14.0,  16.0,  18.0,\n",
+       "       ...\n",
+       "       340.0, 342.0, 344.0, 346.0, 348.0, 350.0, 352.0, 354.0, 356.0, 358.0],\n",
+       "      dtype=&#x27;float32&#x27;, name=&#x27;lon&#x27;, length=180))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>time</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-f4d61b78-2b29-4a75-91c5-da54c7b8def2' class='xr-index-data-in' type='checkbox'/><label for='index-f4d61b78-2b29-4a75-91c5-da54c7b8def2' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(CFTimeIndex([1970-01-01 00:00:00, 1970-02-01 00:00:00, 1970-03-01 00:00:00,\n",
+       "             1970-04-01 00:00:00, 1970-05-01 00:00:00, 1970-06-01 00:00:00,\n",
+       "             1970-07-01 00:00:00, 1970-08-01 00:00:00, 1970-09-01 00:00:00,\n",
+       "             1970-10-01 00:00:00,\n",
+       "             ...\n",
+       "             2021-03-01 00:00:00, 2021-04-01 00:00:00, 2021-05-01 00:00:00,\n",
+       "             2021-06-01 00:00:00, 2021-07-01 00:00:00, 2021-08-01 00:00:00,\n",
+       "             2021-09-01 00:00:00, 2021-10-01 00:00:00, 2021-11-01 00:00:00,\n",
+       "             2021-12-01 00:00:00],\n",
+       "            dtype=&#x27;object&#x27;,\n",
+       "            length=624,\n",
+       "            calendar=&#x27;proleptic_gregorian&#x27;,\n",
+       "            freq=&#x27;MS&#x27;))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-0e4e9a40-6c10-497b-856d-3d895108b774' class='xr-section-summary-in' type='checkbox'  ><label for='section-0e4e9a40-6c10-497b-856d-3d895108b774' class='xr-section-summary' >Attributes: <span>(37)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'><dt><span>climatology :</span></dt><dd>Climatology is based on 1971-2000 SST, Xue, Y., T. M. Smith, and R. W. Reynolds, 2003: Interdecadal changes of 30-yr SST normals during 1871.2000. Journal of Climate, 16, 1601-1612.</dd><dt><span>description :</span></dt><dd>In situ data: ICOADS2.5 before 2007 and NCEP in situ data from 2008 to present. Ice data: HadISST ice before 2010 and NCEP ice after 2010.</dd><dt><span>keywords_vocabulary :</span></dt><dd>NASA Global Change Master Directory (GCMD) Science Keywords</dd><dt><span>keywords :</span></dt><dd>Earth Science &gt; Oceans &gt; Ocean Temperature &gt; Sea Surface Temperature &gt;</dd><dt><span>instrument :</span></dt><dd>Conventional thermometers</dd><dt><span>source_comment :</span></dt><dd>SSTs were observed by conventional thermometers in Buckets (insulated or un-insulated canvas and wooded buckets) or Engine Room Intaker</dd><dt><span>geospatial_lon_min :</span></dt><dd>-1.0</dd><dt><span>geospatial_lon_max :</span></dt><dd>359.0</dd><dt><span>geospatial_laty_max :</span></dt><dd>89.0</dd><dt><span>geospatial_laty_min :</span></dt><dd>-89.0</dd><dt><span>geospatial_lat_max :</span></dt><dd>89.0</dd><dt><span>geospatial_lat_min :</span></dt><dd>-89.0</dd><dt><span>geospatial_lat_units :</span></dt><dd>degrees_north</dd><dt><span>geospatial_lon_units :</span></dt><dd>degrees_east</dd><dt><span>cdm_data_type :</span></dt><dd>Grid</dd><dt><span>project :</span></dt><dd>NOAA Extended Reconstructed Sea Surface Temperature (ERSST)</dd><dt><span>original_publisher_url :</span></dt><dd>http://www.ncdc.noaa.gov</dd><dt><span>References :</span></dt><dd>https://www.ncdc.noaa.gov/data-access/marineocean-data/extended-reconstructed-sea-surface-temperature-ersst-v5 at NCEI and http://www.esrl.noaa.gov/psd/data/gridded/data.noaa.ersst.v5.html</dd><dt><span>source :</span></dt><dd>In situ data: ICOADS R3.0 before 2015, NCEP in situ GTS from 2016 to present, and Argo SST from 1999 to present. Ice data: HadISST2 ice before 2015, and NCEP ice after 2015</dd><dt><span>title :</span></dt><dd>NOAA ERSSTv5 (in situ only)</dd><dt><span>history :</span></dt><dd>created 07/2017 by PSD data using NCEI&#x27;s ERSST V5 NetCDF values</dd><dt><span>institution :</span></dt><dd>This version written at NOAA/ESRL PSD: obtained from NOAA/NESDIS/National Centers for Environmental Information and time aggregated. Original Full Source: NOAA/NESDIS/NCEI/CCOG</dd><dt><span>citation :</span></dt><dd>Huang et al, 2017: Extended Reconstructed Sea Surface Temperatures Version 5 (ERSSTv5): Upgrades, Validations, and Intercomparisons. Journal of Climate, https://doi.org/10.1175/JCLI-D-16-0836.1</dd><dt><span>platform :</span></dt><dd>Ship and Buoy SSTs from ICOADS R3.0 and NCEP GTS</dd><dt><span>standard_name_vocabulary :</span></dt><dd>CF Standard Name Table (v40, 25 January 2017)</dd><dt><span>processing_level :</span></dt><dd>NOAA Level 4</dd><dt><span>Conventions :</span></dt><dd>CF-1.6, ACDD-1.3</dd><dt><span>metadata_link :</span></dt><dd>:metadata_link = https://doi.org/10.7289/V5T72FNM (original format)</dd><dt><span>creator_name :</span></dt><dd>Boyin Huang (original)</dd><dt><span>date_created :</span></dt><dd>2017-06-30T12:18:00Z (original)</dd><dt><span>product_version :</span></dt><dd>Version 5</dd><dt><span>creator_url_original :</span></dt><dd>https://www.ncei.noaa.gov</dd><dt><span>license :</span></dt><dd>No constraints on data access or use</dd><dt><span>comment :</span></dt><dd>SSTs were observed by conventional thermometers in Buckets (insulated or un-insulated canvas and wooded buckets), Engine Room Intakers, or floats and drifters</dd><dt><span>summary :</span></dt><dd>ERSST.v5 is developed based on v4 after revisions of 8 parameters using updated data sets and advanced knowledge of ERSST analysis</dd><dt><span>dataset_title :</span></dt><dd>NOAA Extended Reconstructed SST V5</dd><dt><span>data_modified :</span></dt><dd>2022-06-07</dd></dl></div></li></ul></div></div>"
+      ],
+      "text/plain": [
+       "<xarray.Dataset> Size: 80MB\n",
+       "Dimensions:   (lat: 89, lon: 180, bnds: 2, time: 624)\n",
+       "Coordinates:\n",
+       "  * lat       (lat) float32 356B 88.0 86.0 84.0 82.0 ... -82.0 -84.0 -86.0 -88.0\n",
+       "  * lon       (lon) float32 720B 0.0 2.0 4.0 6.0 8.0 ... 352.0 354.0 356.0 358.0\n",
+       "  * time      (time) object 5kB 1970-01-01 00:00:00 ... 2021-12-01 00:00:00\n",
+       "Dimensions without coordinates: bnds\n",
+       "Data variables:\n",
+       "    lon_bnds  (lon, bnds) float32 1kB -1.0 1.0 1.0 3.0 ... 357.0 357.0 359.0\n",
+       "    lat_bnds  (lat, bnds) float32 712B 89.0 87.0 87.0 85.0 ... -87.0 -87.0 -89.0\n",
+       "    sst       (time, lat, lon) float64 80MB dask.array<chunksize=(1, 89, 180), meta=np.ndarray>\n",
+       "Attributes: (12/37)\n",
+       "    climatology:               Climatology is based on 1971-2000 SST, Xue, Y....\n",
+       "    description:               In situ data: ICOADS2.5 before 2007 and NCEP i...\n",
+       "    keywords_vocabulary:       NASA Global Change Master Directory (GCMD) Sci...\n",
+       "    keywords:                  Earth Science > Oceans > Ocean Temperature > S...\n",
+       "    instrument:                Conventional thermometers\n",
+       "    source_comment:            SSTs were observed by conventional thermometer...\n",
+       "    ...                        ...\n",
+       "    creator_url_original:      https://www.ncei.noaa.gov\n",
+       "    license:                   No constraints on data access or use\n",
+       "    comment:                   SSTs were observed by conventional thermometer...\n",
+       "    summary:                   ERSST.v5 is developed based on v4 after revisi...\n",
+       "    dataset_title:             NOAA Extended Reconstructed SST V5\n",
+       "    data_modified:             2022-06-07"
+      ]
+     },
+     "execution_count": 6,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "sst_avg = ds.temporal.group_average(\"sst\", freq=\"month\")\n",
     "\n",
@@ -489,9 +2059,26 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 7,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "/global/u2/v/vo13/mambaforge/envs/xcdat_notebook_dask/lib/python3.12/site-packages/distributed/client.py:3361: UserWarning: Sending large graph of size 77.20 MiB.\n",
+      "This may cause some slowdown.\n",
+      "Consider loading the data with Dask directly\n",
+      " or using futures or delayed objects to embed the data into the graph without repetition.\n",
+      "See also https://docs.dask.org/en/stable/best-practices.html#load-data-with-dask for more information.\n",
+      "  warnings.warn(\n",
+      "/global/u2/v/vo13/mambaforge/envs/xcdat_notebook_dask/lib/python3.12/site-packages/dask/core.py:133: RuntimeWarning: invalid value encountered in divide\n",
+      "  return func(*(_execute_task(a, cache) for a in args))\n",
+      "/global/u2/v/vo13/mambaforge/envs/xcdat_notebook_dask/lib/python3.12/site-packages/dask/core.py:133: RuntimeWarning: invalid value encountered in divide\n",
+      "  return func(*(_execute_task(a, cache) for a in args))\n"
+     ]
+    }
+   ],
    "source": [
     "# NOTE: You might see `UserWarning: Sending large graph of size 420.59 MiB.`\n",
     "# which indicates that the Dask configuration might not be optimal for the\n",
@@ -511,9 +2098,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 8,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "2024-11-07 11:37:29,320 [INFO]: scheduler.py(remove_client:5919) >> Remove client Client-a5ef60f6-9d3f-11ef-b315-73ffea27fb16\n",
+      "2024-11-07 11:37:29,320 [INFO]: scheduler.py(remove_client:5919) >> Remove client Client-a5ef60f6-9d3f-11ef-b315-73ffea27fb16\n",
+      "2024-11-07 11:37:29,322 [INFO]: core.py(handle_stream:905) >> Received 'close-stream' from tcp://127.0.0.1:60620; closing.\n",
+      "2024-11-07 11:37:29,322 [INFO]: core.py(handle_stream:905) >> Received 'close-stream' from tcp://127.0.0.1:60620; closing.\n",
+      "2024-11-07 11:37:29,323 [INFO]: scheduler.py(remove_client:5919) >> Remove client Client-a5ef60f6-9d3f-11ef-b315-73ffea27fb16\n",
+      "2024-11-07 11:37:29,323 [INFO]: scheduler.py(remove_client:5919) >> Remove client Client-a5ef60f6-9d3f-11ef-b315-73ffea27fb16\n",
+      "2024-11-07 11:37:29,326 [INFO]: scheduler.py(add_client:5911) >> Close client connection: Client-a5ef60f6-9d3f-11ef-b315-73ffea27fb16\n",
+      "2024-11-07 11:37:29,326 [INFO]: scheduler.py(add_client:5911) >> Close client connection: Client-a5ef60f6-9d3f-11ef-b315-73ffea27fb16\n"
+     ]
+    }
+   ],
    "source": [
     "client.close()"
    ]
@@ -671,7 +2273,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "ds_hpc = xc.open_dataset(filepath, chunks=\"auto\")\n",
+    "ds_hpc = xc.tutorial.open_dataset(\"ersstv5\", chunks=\"auto\")\n",
     "\n",
     "sst_avg_hpc = ds.temporal.group_average(\"sst\", freq=\"month\")"
    ]
@@ -770,7 +2372,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "xcdat_notebook_0.7.3",
+   "display_name": "Python 3",
    "language": "python",
    "name": "python3"
   },