diff --git a/docs/tutorials/index.rst b/docs/tutorials/index.rst index 2ae764a..26342e8 100644 --- a/docs/tutorials/index.rst +++ b/docs/tutorials/index.rst @@ -17,3 +17,4 @@ Here is a list of small tutorial notebooks to illustrate how to use earthkit. gpu_hydro polytope_polygon.ipynb polytope_timeseries.ipynb + regional-humidity-analysis.ipynb diff --git a/docs/tutorials/regional-humidity-analysis.ipynb b/docs/tutorials/regional-humidity-analysis.ipynb new file mode 100644 index 0000000..aab7a64 --- /dev/null +++ b/docs/tutorials/regional-humidity-analysis.ipynb @@ -0,0 +1,3488 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "2a2f7aca-da88-4ad7-bbb9-55ff9e7a465a", + "metadata": {}, + "source": [ + "# Regional analysis of derived humidity variables" + ] + }, + { + "cell_type": "markdown", + "id": "2e52ca37-92b8-4810-92ad-c5c9eb6008ab", + "metadata": {}, + "source": [ + "In this notebook you will see:\n", + "- How to download ERA5 data from the CDS using `earthkit.data`\n", + "- How to compute the specific and relative humidity using `earthkit.meteo`\n", + "- How to access spatial polygons with `earthkit.geo`\n", + "- How to compute spatial and temporal aggregations with `earthkit.transforms`\n", + "- How to plot the various output produced with `earthkit.plots`\n", + "\n", + "## Components of earthkit\n", + "\n", + "This tutorial uses the following earthkit components - click any logo to open the package documentation:\n", + "\n", + "
\n", + "<xarray.Dataset> Size: 235MB\n", + "Dimensions: (valid_time: 744, latitude: 81, longitude: 61)\n", + "Coordinates:\n", + " * valid_time (valid_time) datetime64[ns] 6kB 2020-01-01 ... 2020-01-31T23:...\n", + " * latitude (latitude) float64 648B 65.0 64.75 64.5 ... 45.5 45.25 45.0\n", + " * longitude (longitude) float64 488B -10.0 -9.75 -9.5 -9.25 ... 4.5 4.75 5.0\n", + "Data variables:\n", + " 10u (valid_time, latitude, longitude) float64 29MB ...\n", + " 10v (valid_time, latitude, longitude) float64 29MB ...\n", + " 2d (valid_time, latitude, longitude) float64 29MB ...\n", + " 2t (valid_time, latitude, longitude) float64 29MB ...\n", + " sp (valid_time, latitude, longitude) float64 29MB ...\n", + " ssr (valid_time, latitude, longitude) float64 29MB ...\n", + " str (valid_time, latitude, longitude) float64 29MB ...\n", + " tp (valid_time, latitude, longitude) float64 29MB ...\n", + "Attributes:\n", + " Conventions: CF-1.8\n", + " institution: ECMWF
<xarray.Dataset> Size: 294MB\n", + "Dimensions: (valid_time: 744, latitude: 81, longitude: 61)\n", + "Coordinates:\n", + " * valid_time (valid_time) datetime64[ns] 6kB 2020-01-01 ... 2020-01-31T23:...\n", + " * latitude (latitude) float64 648B 65.0 64.75 64.5 ... 45.5 45.25 45.0\n", + " * longitude (longitude) float64 488B -10.0 -9.75 -9.5 -9.25 ... 4.5 4.75 5.0\n", + "Data variables:\n", + " 10u (valid_time, latitude, longitude) float64 29MB ...\n", + " 10v (valid_time, latitude, longitude) float64 29MB ...\n", + " 2d (valid_time, latitude, longitude) float64 29MB 279.2 ... 279.7\n", + " 2t (valid_time, latitude, longitude) float64 29MB 280.6 ... 280.4\n", + " sp (valid_time, latitude, longitude) float64 29MB 9.927e+04 ... ...\n", + " ssr (valid_time, latitude, longitude) float64 29MB ...\n", + " str (valid_time, latitude, longitude) float64 29MB ...\n", + " tp (valid_time, latitude, longitude) float64 29MB ...\n", + " 2q (valid_time, latitude, longitude) float64 29MB 0.005908 ... 0...\n", + " 2r (valid_time, latitude, longitude) float64 29MB 90.77 ... 95.31\n", + "Attributes:\n", + " Conventions: CF-1.8\n", + " institution: ECMWF
<xarray.Dataset> Size: 396kB\n", + "Dimensions: (valid_time: 1, latitude: 81, longitude: 61)\n", + "Coordinates:\n", + " * valid_time (valid_time) datetime64[ns] 8B 2020-01-01\n", + " * latitude (latitude) float64 648B 65.0 64.75 64.5 ... 45.5 45.25 45.0\n", + " * longitude (longitude) float64 488B -10.0 -9.75 -9.5 -9.25 ... 4.5 4.75 5.0\n", + "Data variables:\n", + " 10u (valid_time, latitude, longitude) float64 40kB 10.63 ... 0.6168\n", + " 10v (valid_time, latitude, longitude) float64 40kB 8.817 ... 1.676\n", + " 2d (valid_time, latitude, longitude) float64 40kB 275.7 ... 277.6\n", + " 2t (valid_time, latitude, longitude) float64 40kB 278.1 ... 282.7\n", + " sp (valid_time, latitude, longitude) float64 40kB 9.938e+04 ... ...\n", + " ssr (valid_time, latitude, longitude) float64 40kB 1.051e+05 ... ...\n", + " str (valid_time, latitude, longitude) float64 40kB -8.65e+04 ... ...\n", + " tp (valid_time, latitude, longitude) float64 40kB 0.0007672 ... ...\n", + " 2q (valid_time, latitude, longitude) float64 40kB 0.004708 ... 0...\n", + " 2r (valid_time, latitude, longitude) float64 40kB 89.3 ... 92.94\n", + "Attributes:\n", + " Conventions: CF-1.8\n", + " institution: ECMWF
| \n", + " | NUTS_ID | \n", + "LEVL_CODE | \n", + "CNTR_CODE | \n", + "NAME_LATN | \n", + "NUTS_NAME | \n", + "MOUNT_TYPE | \n", + "URBN_TYPE | \n", + "COAST_TYPE | \n", + "NAME_ENGL | \n", + "NAME_FREN | \n", + "ISO3_CODE | \n", + "SVRG_UN | \n", + "CAPT | \n", + "EU_STAT | \n", + "EFTA_STAT | \n", + "CC_STAT | \n", + "NAME_GERM | \n", + "geometry | \n", + "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 64 | \n", + "UKK | \n", + "1 | \n", + "UK | \n", + "South West (England) | \n", + "South West (England) | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "MULTIPOLYGON (((-1.67314 52.0363, -1.66573 51.... | \n", + "
| 65 | \n", + "UKL | \n", + "1 | \n", + "UK | \n", + "Wales | \n", + "Wales | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "MULTIPOLYGON (((-3.36339 53.35203, -3.16975 53... | \n", + "
| 66 | \n", + "UKN | \n", + "1 | \n", + "UK | \n", + "Northern Ireland | \n", + "Northern Ireland | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "MULTIPOLYGON (((-6.09652 55.20602, -6.03339 55... | \n", + "
| 79 | \n", + "UKC | \n", + "1 | \n", + "UK | \n", + "North East (England) | \n", + "North East (England) | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "POLYGON ((-1.34737 54.86069, -1.24223 54.72259... | \n", + "
| 80 | \n", + "UKD | \n", + "1 | \n", + "UK | \n", + "North West (England) | \n", + "North West (England) | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "POLYGON ((-2.59587 54.96483, -2.56833 54.92683... | \n", + "
| 81 | \n", + "UKE | \n", + "1 | \n", + "UK | \n", + "Yorkshire and the Humber | \n", + "Yorkshire and the Humber | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "POLYGON ((-0.79091 54.55948, -0.54857 54.45762... | \n", + "
| 93 | \n", + "UKF | \n", + "1 | \n", + "UK | \n", + "East Midlands (England) | \n", + "East Midlands (England) | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "POLYGON ((-0.20717 53.49469, -0.12155 53.44174... | \n", + "
| 94 | \n", + "UKG | \n", + "1 | \n", + "UK | \n", + "West Midlands (England) | \n", + "West Midlands (England) | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "POLYGON ((-1.7716 53.0218, -1.8306 52.95586, -... | \n", + "
| 95 | \n", + "UKH | \n", + "1 | \n", + "UK | \n", + "East of England | \n", + "East of England | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "POLYGON ((1.67548 52.74269, 1.73639 52.64175, ... | \n", + "
| 96 | \n", + "UKI | \n", + "1 | \n", + "UK | \n", + "London | \n", + "London | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "POLYGON ((-0.19819 51.46752, -0.21534 51.47063... | \n", + "
| 97 | \n", + "UKJ | \n", + "1 | \n", + "UK | \n", + "South East (England) | \n", + "South East (England) | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "MULTIPOLYGON (((-0.65604 52.05515, -0.65295 51... | \n", + "
| 106 | \n", + "UKM | \n", + "1 | \n", + "UK | \n", + "Scotland | \n", + "Scotland | \n", + "0 | \n", + "0 | \n", + "0 | \n", + "United Kingdom | \n", + "Royaume-Uni | \n", + "GBR | \n", + "UN Member State | \n", + "London | \n", + "F | \n", + "F | \n", + "F | \n", + "Vereinigtes Königreich | \n", + "MULTIPOLYGON (((-3.06916 58.61819, -3.10532 58... | \n", + "
<xarray.Dataset> Size: 1kB\n", + "Dimensions: (index: 12)\n", + "Coordinates:\n", + " * index (index) int64 96B 64 65 66 79 80 81 93 94 95 96 97 106\n", + " valid_time datetime64[ns] 8B 2020-01-01\n", + "Data variables:\n", + " 10u (index) float64 96B 4.602 4.826 4.966 ... 4.238 4.643 6.243\n", + " 10v (index) float64 96B 5.04 5.011 5.608 5.103 ... 4.752 5.069 6.271\n", + " 2d (index) float64 96B 280.7 280.1 279.2 ... 280.3 280.4 278.6\n", + " 2t (index) float64 96B 282.4 281.6 281.3 ... 282.2 282.2 280.6\n", + " sp (index) float64 96B 1.012e+05 9.993e+04 ... 1.015e+05 9.87e+04\n", + " ssr (index) float64 96B 4.995e+05 4.476e+05 ... 5.548e+05 2.841e+05\n", + " str (index) float64 96B -5.093e+04 -4.346e+04 ... -4.824e+04\n", + " tp (index) float64 96B 0.0006753 0.0008545 ... 0.0005381 0.0008527\n", + " 2q (index) float64 96B 0.00659 0.006373 ... 0.006435 0.005811\n", + " 2r (index) float64 96B 95.44 95.33 92.88 ... 95.09 95.22 92.12\n", + "Attributes:\n", + " Conventions: CF-1.8\n", + " institution: ECMWF