Accessing the inventory of hazard indicators#

Hazard indicator data are 3 dimensional arrays, the dimensions being (‘index’, ‘spatial y’, ‘spatial x’). In the case of a EPSG:4326 co-ordinate reference system (CRS), for example, this would be (‘index’, ‘latitude’, ‘longitude’). The data can be in any CRS; generally the CRS of the original CRS is retained. API requests specify location via latitude and longitude and physrisk performs the necessary conversion.

The ‘index’ depends on the nature of the hazards. For acute hazards – potential occurrence of events such as flood or tropical cyclone – ‘index’ will be the return period of the event. For chronic hazards its definition can vary. Chronic hazard indicators may be threshold-based, for example ‘mean degree days per year above threshold’ or ‘mean days per year above temperature threshold’; in these cases ‘index’ gives the thresholds. Chronic hazards may comprise just a single value (e.g. annual probability of fire) in which case there is just a single element in ‘index’.

The inventory is a list of ‘hazard resources’ and each resource corresponds to a single array. This means that there are separate entries for the same hazard indicators inferred from different (e.g. CMIP6 or CORDEX) climate models.

For the requests above, the ‘path’ of the array can be specified explicitly. This is the unique identifier for the hazard resource. But path can also be omitted in which can physrisk applies a set of rules to select a particular array.

[1]:
import pprint as pp
import pandas as pd
import requests
from IPython.display import Markdown, display
[2]:
base_url = "https://physrisk-api-sandbox.apps.odh-cl1.apps.os-climate.org/api/"
url = base_url + "get_hazard_data_availability"
hazard_resources = requests.post(url, json={}).json()["models"]

We can then read the inventory items, for example:

[3]:
hazard_types = set(r["hazard_type"] for r in hazard_resources)
print(f"Hazards: {hazard_types}")
wind_resources = [r for r in hazard_resources if r["hazard_type"] == "Wind"]
print(f"{len(hazard_resources)} hazard resources in the inventory, of which {len(wind_resources)} are Wind resources.")
iris_model_resource = next(r for r in wind_resources if "iris" in r["path"])
# pp.pprint(iris_model_resource[0])
path = iris_model_resource["path"]
print(f"The resource 'path' is a unique identifier. For the IRIS Wind resource, for example, this is: '{path}'.")
print(
    "Where resources are multi-dimensional arrays (as opposed to an external API), this is also the path of the array."
)
print("The available climate scenarios and years for the IRIS resource are:")
pp.pprint(iris_model_resource["scenarios"])
print("The whole IRIS data resource, as an example:")
pp.pprint(iris_model_resource)

Hazards: {'Wind', 'CoastalInundation', 'Fire', 'WaterRisk', 'RiverineInundation', 'CombinedInundation', 'Drought', 'Precipitation', 'Subsidence', 'Hail', 'ChronicHeat'}
122 hazard resources in the inventory, of which 2 are Wind resources.
The resource 'path' is a unique identifier. For the IRIS Wind resource, for example, this is: 'wind/iris/v1/max_speed_{scenario}_{year}'.
Where resources are multi-dimensional arrays (as opposed to an external API), this is also the path of the array.
The available climate scenarios and years for the IRIS resource are:
[{'id': 'historical', 'years': [2010]},
 {'id': 'ssp119', 'years': [2050]},
 {'id': 'ssp245', 'years': [2050]},
 {'id': 'ssp585', 'years': [2050]}]
The whole IRIS data resource, as an example:
{'description': 'Sparks, N., Toumi, R. The Imperial College Storm Model (IRIS) '
                'Dataset. *Sci Data* **11**, 424 (2024). '
                '<https://doi.org/10.1038/s41597-024-03250-y>\n'
                '## The Imperial College Storm Model (IRIS) Dataset - '
                'Scientific Data\n'
                'Assessing tropical cyclone risk on a global scale given the '
                'infrequency of landfalling tropical cyclones and the short '
                'period of reliable observations remains a challenge. '
                'Synthetic tropical cyclone datasets can help overcome these '
                'problems. Here we present a new global dataset created by '
                'IRIS, the ImpeRIal college Storm Model. IRIS is novel '
                'because, unlike other synthetic TC models, it only simulates '
                'the decay from the point of lifetime maximum intensity. This '
                'minimises the bias in the dataset. It takes input from 42 '
                'years of observed tropical cyclones and creates a 10,000 year '
                'synthetic dataset which is then validated against the '
                'observations. IRIS captures important statistical '
                'characteristics of the observed data. The return periods of '
                'the landfall maximum wind speed (1 minute sustained in m/s) '
                'are realistic globally. Climate model projections are used to '
                'adjust the life-time maximum intensity.\n'
                '\n'
                '***Disclaimer***: There have been many improvements on the '
                'dataset. Contact Professor Toumi from the Imperial College '
                'London for improved data.',
 'display_groups': [],
 'display_name': 'Max wind speed (IRIS)',
 'group_id': 'iris_osc',
 'hazard_type': 'Wind',
 'indicator_id': 'max_speed',
 'indicator_model_gcm': 'combined',
 'indicator_model_id': None,
 'map': {'bounds': [[-180.0, 60.0],
                    [180.0, 60.0],
                    [180.0, -60.0],
                    [-180.0, -60.0]],
         'colormap': {'max_index': 255,
                      'max_value': 120.0,
                      'min_index': 1,
                      'min_value': 0.0,
                      'name': 'heating',
                      'nodata_index': 0,
                      'units': 'm/s'},
         'path': 'wind/iris/v1/max_speed_{scenario}_{year}_map',
         'source': 'map_array_pyramid'},
 'params': {},
 'path': 'wind/iris/v1/max_speed_{scenario}_{year}',
 'scenarios': [{'id': 'historical', 'years': [2010]},
               {'id': 'ssp119', 'years': [2050]},
               {'id': 'ssp245', 'years': [2050]},
               {'id': 'ssp585', 'years': [2050]}],
 'units': 'm/s'}
[ ]:

The descriptions are in markdown, which can also be displayed, for example for the IRIS data set:

[4]:
print("A description is provided in markdown, e.g.:")
display(Markdown(iris_model_resource["description"]))
A description is provided in markdown, e.g.:

Sparks, N., Toumi, R. The Imperial College Storm Model (IRIS) Dataset. Sci Data 11, 424 (2024). https://doi.org/10.1038/s41597-024-03250-y ## The Imperial College Storm Model (IRIS) Dataset - Scientific Data Assessing tropical cyclone risk on a global scale given the infrequency of landfalling tropical cyclones and the short period of reliable observations remains a challenge. Synthetic tropical cyclone datasets can help overcome these problems. Here we present a new global dataset created by IRIS, the ImpeRIal college Storm Model. IRIS is novel because, unlike other synthetic TC models, it only simulates the decay from the point of lifetime maximum intensity. This minimises the bias in the dataset. It takes input from 42 years of observed tropical cyclones and creates a 10,000 year synthetic dataset which is then validated against the observations. IRIS captures important statistical characteristics of the observed data. The return periods of the landfall maximum wind speed (1 minute sustained in m/s) are realistic globally. Climate model projections are used to adjust the life-time maximum intensity.

Disclaimer: There have been many improvements on the dataset. Contact Professor Toumi from the Imperial College London for improved data.

Writing hazard resources to a summary table#

The code below creates a summary table for all hazard resources.

[5]:
rcp_display_names = {"rcp2p6": "RCP 2.6", "rcp4p5": "RCP 4.5" ,"rcp6p0": "RCP 6.0", "rcp8p5": "RCP 8.5", }

def scenario_code(id: str):
    if id.startswith("ssp"):
        return id.upper()
    elif id.startswith("rcp"):
        return id.replace("rcp", "RCP ").replace("p", ".")
    else:
        return id

def format_scenario(scenarios):
    return ", ".join(f"{scenario_code(scen['id'])} ({', '.join(str(y) for y in scen['years'])})" for scen in scenarios)

resource_df = pd.json_normalize(hazard_resources)
resource_df = resource_df.filter(["hazard_type", "indicator_id", "display_name", "path", "scenarios"])
resource_df = resource_df.sort_values(by=["hazard_type", "indicator_id", "display_name"])
resource_df.scenarios = resource_df.scenarios.apply(lambda s: format_scenario(s))
resource_df = resource_df.rename(columns={"hazard_type": "Hazard type",
                                          "indicator_id": "Indicator ID",
                                          "display_name": "Display name",
                                          "path": "Path (ID)",
                                          "scenarios": "Scenarios",
                                          })

style = """
<style scoped>
table {
  font-size: 8px;
}
</style>
"""

md = resource_df.to_markdown(index=False)
[6]:
display(Markdown(style + md))

Hazard type

Indicator ID

Display name

Path (ID)

Scenarios

ChronicHeat

days/above/35c

Days per year above 35°C (Jupiter)

chronic_heat/jupiter/v1/days_above_35c_{scenario}_{year}

SSP126 (2020, 2030, 2040, 2050, 2075, 2100), SSP585 (2020, 2030, 2040, 2050, 2075, 2100)

ChronicHeat

days_tas/above/25c

Days with average temperature above 25°C/ACCESS-CM2

chronic_heat/osc/v2/days_tas_above_25c_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/25c

Days with average temperature above 25°C/CMCC-ESM2

chronic_heat/osc/v2/days_tas_above_25c_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/25c

Days with average temperature above 25°C/CNRM-CM6-1

chronic_heat/osc/v2/days_tas_above_25c_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/25c

Days with average temperature above 25°C/MIROC6

chronic_heat/osc/v2/days_tas_above_25c_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/25c

Days with average temperature above 25°C/MPI-ESM1-2-LR

chronic_heat/osc/v2/days_tas_above_25c_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/25c

Days with average temperature above 25°C/NorESM2-MM

chronic_heat/osc/v2/days_tas_above_25c_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/30c

Days with average temperature above 30°C/ACCESS-CM2

chronic_heat/osc/v2/days_tas_above_30c_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/30c

Days with average temperature above 30°C/CMCC-ESM2

chronic_heat/osc/v2/days_tas_above_30c_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/30c

Days with average temperature above 30°C/CNRM-CM6-1

chronic_heat/osc/v2/days_tas_above_30c_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/30c

Days with average temperature above 30°C/MIROC6

chronic_heat/osc/v2/days_tas_above_30c_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/30c

Days with average temperature above 30°C/MPI-ESM1-2-LR

chronic_heat/osc/v2/days_tas_above_30c_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/30c

Days with average temperature above 30°C/NorESM2-MM

chronic_heat/osc/v2/days_tas_above_30c_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/35c

Days with average temperature above 35°C/ACCESS-CM2

chronic_heat/osc/v2/days_tas_above_35c_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/35c

Days with average temperature above 35°C/CMCC-ESM2

chronic_heat/osc/v2/days_tas_above_35c_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/35c

Days with average temperature above 35°C/CNRM-CM6-1

chronic_heat/osc/v2/days_tas_above_35c_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/35c

Days with average temperature above 35°C/MIROC6

chronic_heat/osc/v2/days_tas_above_35c_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/35c

Days with average temperature above 35°C/MPI-ESM1-2-LR

chronic_heat/osc/v2/days_tas_above_35c_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/35c

Days with average temperature above 35°C/NorESM2-MM

chronic_heat/osc/v2/days_tas_above_35c_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/40c

Days with average temperature above 40°C/ACCESS-CM2

chronic_heat/osc/v2/days_tas_above_40c_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/40c

Days with average temperature above 40°C/CMCC-ESM2

chronic_heat/osc/v2/days_tas_above_40c_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/40c

Days with average temperature above 40°C/CNRM-CM6-1

chronic_heat/osc/v2/days_tas_above_40c_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/40c

Days with average temperature above 40°C/MIROC6

chronic_heat/osc/v2/days_tas_above_40c_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/40c

Days with average temperature above 40°C/MPI-ESM1-2-LR

chronic_heat/osc/v2/days_tas_above_40c_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/40c

Days with average temperature above 40°C/NorESM2-MM

chronic_heat/osc/v2/days_tas_above_40c_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/45c

Days with average temperature above 45°C/ACCESS-CM2

chronic_heat/osc/v2/days_tas_above_45c_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/45c

Days with average temperature above 45°C/CMCC-ESM2

chronic_heat/osc/v2/days_tas_above_45c_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/45c

Days with average temperature above 45°C/CNRM-CM6-1

chronic_heat/osc/v2/days_tas_above_45c_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/45c

Days with average temperature above 45°C/MIROC6

chronic_heat/osc/v2/days_tas_above_45c_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/45c

Days with average temperature above 45°C/MPI-ESM1-2-LR

chronic_heat/osc/v2/days_tas_above_45c_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/45c

Days with average temperature above 45°C/NorESM2-MM

chronic_heat/osc/v2/days_tas_above_45c_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/50c

Days with average temperature above 50°C/ACCESS-CM2

chronic_heat/osc/v2/days_tas_above_50c_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/50c

Days with average temperature above 50°C/CMCC-ESM2

chronic_heat/osc/v2/days_tas_above_50c_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/50c

Days with average temperature above 50°C/CNRM-CM6-1

chronic_heat/osc/v2/days_tas_above_50c_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/50c

Days with average temperature above 50°C/MIROC6

chronic_heat/osc/v2/days_tas_above_50c_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/50c

Days with average temperature above 50°C/MPI-ESM1-2-LR

chronic_heat/osc/v2/days_tas_above_50c_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/50c

Days with average temperature above 50°C/NorESM2-MM

chronic_heat/osc/v2/days_tas_above_50c_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/55c

Days with average temperature above 55°C/ACCESS-CM2

chronic_heat/osc/v2/days_tas_above_55c_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/55c

Days with average temperature above 55°C/CMCC-ESM2

chronic_heat/osc/v2/days_tas_above_55c_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/55c

Days with average temperature above 55°C/CNRM-CM6-1

chronic_heat/osc/v2/days_tas_above_55c_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/55c

Days with average temperature above 55°C/MIROC6

chronic_heat/osc/v2/days_tas_above_55c_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/55c

Days with average temperature above 55°C/MPI-ESM1-2-LR

chronic_heat/osc/v2/days_tas_above_55c_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_tas/above/55c

Days with average temperature above 55°C/NorESM2-MM

chronic_heat/osc/v2/days_tas_above_55c_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

days_wbgt_above

Days with wet-bulb globe temperature above threshold in °C/ACCESS-CM2

chronic_heat/osc/v2/days_wbgt_above_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP245 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP370 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP585 (2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

days_wbgt_above

Days with wet-bulb globe temperature above threshold in °C/CMCC-ESM2

chronic_heat/osc/v2/days_wbgt_above_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP245 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP370 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP585 (2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

days_wbgt_above

Days with wet-bulb globe temperature above threshold in °C/CNRM-CM6-1

chronic_heat/osc/v2/days_wbgt_above_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP245 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP370 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP585 (2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

days_wbgt_above

Days with wet-bulb globe temperature above threshold in °C/MIROC6

chronic_heat/osc/v2/days_wbgt_above_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP245 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP370 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP585 (2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

days_wbgt_above

Days with wet-bulb globe temperature above threshold in °C/MPI-ESM1-2-LR

chronic_heat/osc/v2/days_wbgt_above_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP245 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP370 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP585 (2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

days_wbgt_above

Days with wet-bulb globe temperature above threshold in °C/NorESM2-MM

chronic_heat/osc/v2/days_wbgt_above_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP245 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP370 (2030, 2040, 2050, 2060, 2070, 2080, 2090), SSP585 (2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

mean_degree_days/above/32c

Mean degree days above 32°C/ACCESS-CM2

chronic_heat/osc/v2/mean_degree_days_v2_above_32c_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/32c

Mean degree days above 32°C/CMCC-ESM2

chronic_heat/osc/v2/mean_degree_days_v2_above_32c_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/32c

Mean degree days above 32°C/CNRM-CM6-1

chronic_heat/osc/v2/mean_degree_days_v2_above_32c_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/32c

Mean degree days above 32°C/MIROC6

chronic_heat/osc/v2/mean_degree_days_v2_above_32c_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/32c

Mean degree days above 32°C/MPI-ESM1-2-LR

chronic_heat/osc/v2/mean_degree_days_v2_above_32c_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/32c

Mean degree days above 32°C/NorESM2-MM

chronic_heat/osc/v2/mean_degree_days_v2_above_32c_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/index

Mean degree days above index value/ACCESS-CM2

chronic_heat/osc/v2/mean_degree_days_above_index_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/index

Mean degree days above index value/CMCC-ESM2

chronic_heat/osc/v2/mean_degree_days_above_index_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/index

Mean degree days above index value/CNRM-CM6-1

chronic_heat/osc/v2/mean_degree_days_above_index_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/index

Mean degree days above index value/MIROC6

chronic_heat/osc/v2/mean_degree_days_above_index_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/index

Mean degree days above index value/MPI-ESM1-2-LR

chronic_heat/osc/v2/mean_degree_days_above_index_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/above/index

Mean degree days above index value/NorESM2-MM

chronic_heat/osc/v2/mean_degree_days_above_index_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/below/index

Mean degree days below index value/ACCESS-CM2

chronic_heat/osc/v2/mean_degree_days_below_index_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/below/index

Mean degree days below index value/CMCC-ESM2

chronic_heat/osc/v2/mean_degree_days_below_index_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/below/index

Mean degree days below index value/CNRM-CM6-1

chronic_heat/osc/v2/mean_degree_days_below_index_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/below/index

Mean degree days below index value/MIROC6

chronic_heat/osc/v2/mean_degree_days_below_index_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/below/index

Mean degree days below index value/MPI-ESM1-2-LR

chronic_heat/osc/v2/mean_degree_days_below_index_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_degree_days/below/index

Mean degree days below index value/NorESM2-MM

chronic_heat/osc/v2/mean_degree_days_below_index_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/high

Mean work loss, high intensity/ACCESS-CM2

chronic_heat/osc/v2/mean_work_loss_high_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/high

Mean work loss, high intensity/CMCC-ESM2

chronic_heat/osc/v2/mean_work_loss_high_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/high

Mean work loss, high intensity/CNRM-CM6-1

chronic_heat/osc/v2/mean_work_loss_high_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/high

Mean work loss, high intensity/MIROC6

chronic_heat/osc/v2/mean_work_loss_high_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/high

Mean work loss, high intensity/MPI-ESM1-2-LR

chronic_heat/osc/v2/mean_work_loss_high_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/high

Mean work loss, high intensity/NorESM2-MM

chronic_heat/osc/v2/mean_work_loss_high_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/low

Mean work loss, low intensity/ACCESS-CM2

chronic_heat/osc/v2/mean_work_loss_low_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/low

Mean work loss, low intensity/CMCC-ESM2

chronic_heat/osc/v2/mean_work_loss_low_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/low

Mean work loss, low intensity/CNRM-CM6-1

chronic_heat/osc/v2/mean_work_loss_low_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/low

Mean work loss, low intensity/MIROC6

chronic_heat/osc/v2/mean_work_loss_low_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/low

Mean work loss, low intensity/MPI-ESM1-2-LR

chronic_heat/osc/v2/mean_work_loss_low_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/low

Mean work loss, low intensity/NorESM2-MM

chronic_heat/osc/v2/mean_work_loss_low_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/medium

Mean work loss, medium intensity/ACCESS-CM2

chronic_heat/osc/v2/mean_work_loss_medium_ACCESS-CM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/medium

Mean work loss, medium intensity/CMCC-ESM2

chronic_heat/osc/v2/mean_work_loss_medium_CMCC-ESM2_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/medium

Mean work loss, medium intensity/CNRM-CM6-1

chronic_heat/osc/v2/mean_work_loss_medium_CNRM-CM6-1_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/medium

Mean work loss, medium intensity/MIROC6

chronic_heat/osc/v2/mean_work_loss_medium_MIROC6_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/medium

Mean work loss, medium intensity/MPI-ESM1-2-LR

chronic_heat/osc/v2/mean_work_loss_medium_MPI-ESM1-2-LR_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

mean_work_loss/medium

Mean work loss, medium intensity/NorESM2-MM

chronic_heat/osc/v2/mean_work_loss_medium_NorESM2-MM_{scenario}_{year}

historical (2005), SSP126 (2030, 2040, 2050), SSP245 (2030, 2040, 2050), SSP585 (2030, 2040, 2050)

ChronicHeat

weeks_water_temp_above

Weeks with average water temperature above threshold in °C/E2O

chronic_heat/nluu/v2/weeks_water_temp_above_E2O_{scenario}_{year}

historical (1991)

ChronicHeat

weeks_water_temp_above

Weeks with average water temperature above threshold in °C/GFDL

chronic_heat/nluu/v2/weeks_water_temp_above_GFDL_{scenario}_{year}

historical (1991), RCP 2.6 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 4.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 6.0 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 8.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

weeks_water_temp_above

Weeks with average water temperature above threshold in °C/HadGEM

chronic_heat/nluu/v2/weeks_water_temp_above_HadGEM_{scenario}_{year}

historical (1991), RCP 2.6 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 4.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 6.0 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 8.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

weeks_water_temp_above

Weeks with average water temperature above threshold in °C/IPSL

chronic_heat/nluu/v2/weeks_water_temp_above_IPSL_{scenario}_{year}

historical (1991), RCP 2.6 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 4.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 6.0 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 8.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

weeks_water_temp_above

Weeks with average water temperature above threshold in °C/MIROC

chronic_heat/nluu/v2/weeks_water_temp_above_MIROC_{scenario}_{year}

historical (1991), RCP 2.6 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 4.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 6.0 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 8.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090)

ChronicHeat

weeks_water_temp_above

Weeks with average water temperature above threshold in °C/NorESM

chronic_heat/nluu/v2/weeks_water_temp_above_NorESM_{scenario}_{year}

historical (1991), RCP 2.6 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 4.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 6.0 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090), RCP 8.5 (2020, 2030, 2040, 2050, 2060, 2070, 2080, 2090)

CoastalInundation

flood_depth

Flood depth/5%, with subsidence (WRI)

inundation/wri/v2/inuncoast_{scenario}wtsub{year}_0_perc_05

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

CoastalInundation

flood_depth

Flood depth/50%, no subsidence (WRI)

inundation/wri/v2/inuncoast_{scenario}nosub{year}_0_perc_50

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

CoastalInundation

flood_depth

Flood depth/50%, with subsidence (WRI)

inundation/wri/v2/inuncoast_{scenario}wtsub{year}_0_perc_50

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

CoastalInundation

flood_depth

Flood depth/95%, no subsidence (WRI)

inundation/wri/v2/inuncoast_{scenario}nosub{year}_0

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

CoastalInundation

flood_depth

Flood depth/95%, with subsidence (WRI)

inundation/wri/v2/inuncoast_{scenario}wtsub{year}_0

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

CoastalInundation

flood_depth

Flood depth/baseline, no subsidence (WRI)

inundation/wri/v2/inuncoast_historical_nosub_hist_0

historical (1980)

CoastalInundation

flood_depth

Flood depth/baseline, with subsidence (WRI)

inundation/wri/v2/inuncoast_historical_wtsub_hist_0

historical (1980)

CoastalInundation

flood_depth/nosub/5

Flood depth/5%, no subsidence (WRI)

inundation/wri/v2/inuncoast_{scenario}nosub{year}_0_perc_05

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

CombinedInundation

flooded_fraction

Flooded fraction (Jupiter)

combined_flood/jupiter/v1/fraction_{scenario}_{year}

SSP126 (2020, 2030, 2040, 2050, 2075, 2100), SSP585 (2020, 2030, 2040, 2050, 2075, 2100)

Drought

months/spei12m/below/index

Drought SPEI index

drought/osc/v1/months_spei12m_below_index_MIROC6_{scenario}_{year}

SSP585 (2005, 2030, 2040, 2050, 2080)

Drought

months/spei3m/below/-2

Drought (Jupiter)

drought/jupiter/v1/months_spei3m_below_-2_{scenario}_{year}

SSP126 (2020, 2030, 2040, 2050, 2075, 2100), SSP585 (2020, 2030, 2040, 2050, 2075, 2100)

Fire

fire_probability

Fire probability (Jupiter)

fire/jupiter/v1/fire_probability_{scenario}_{year}

SSP126 (2020, 2030, 2040, 2050, 2075, 2100), SSP585 (2020, 2030, 2040, 2050, 2075, 2100)

Hail

days/above/5cm

Large hail days per year (Jupiter)

hail/jupiter/v1/days_above_5cm_{scenario}_{year}

SSP126 (2020, 2030, 2040, 2050, 2075, 2100), SSP585 (2020, 2030, 2040, 2050, 2075, 2100)

Precipitation

max/daily/water_equivalent

Precipitation (Jupiter)

precipitation/jupiter/v1/max_daily_water_equivalent_{scenario}_{year}

SSP126 (2020, 2030, 2040, 2050, 2075, 2100), SSP585 (2020, 2030, 2040, 2050, 2075, 2100)

RiverineInundation

flood_depth

Flood depth (TUDelft)

inundation/river_tudelft/v2/flood_depth_unprot_{scenario}_{year}

historical (1985), RCP 4.5 (2035, 2085), RCP 8.5 (2035, 2085)

RiverineInundation

flood_depth

Flood depth/GFDL-ESM2M (WRI)

inundation/wri/v2/inunriver_{scenario}0000GFDL-ESM2M{year}

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

RiverineInundation

flood_depth

Flood depth/HadGEM2-ES (WRI)

inundation/wri/v2/inunriver_{scenario}0000HadGEM2-ES{year}

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

RiverineInundation

flood_depth

Flood depth/IPSL-CM5A-LR (WRI)

inundation/wri/v2/inunriver_{scenario}00IPSL-CM5A-LR{year}

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

RiverineInundation

flood_depth

Flood depth/MIROC-ESM-CHEM (WRI)

inundation/wri/v2/inunriver_{scenario}MIROC-ESM-CHEM{year}

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

RiverineInundation

flood_depth

Flood depth/NorESM1-M (WRI)

inundation/wri/v2/inunriver_{scenario}00000NorESM1-M{year}

RCP 4.5 (2030, 2050, 2080), RCP 8.5 (2030, 2050, 2080)

RiverineInundation

flood_depth

Flood depth/baseline (WRI)

inundation/wri/v2/inunriver_{scenario}000000000WATCH{year}

historical (1980)

RiverineInundation

flood_sop

Standard of protection (TUDelft)

inundation/river_tudelft/v2/flood_sop_{scenario}_{year}

historical (1985), RCP 4.5 (2035, 2085), RCP 8.5 (2035, 2085)

Subsidence

land_subsidence_rate

Land subsidence rate (Davydzenka et Al (2024))

subsidence/csm/v1/land_subsidence_rate_{scenario}_{year}

historical (2021)

WaterRisk

water_demand

Water demand in centimeters/year (Aqueduct 4.0)

water_risk/wri/v2/water_demand_{scenario}_{year}

historical (1999), SSP126 (2030, 2050, 2080), SSP370 (2030, 2050, 2080), SSP585 (2030, 2050, 2080)

WaterRisk

water_depletion

Water depletion (Aqueduct 4.0)

water_risk/wri/v2/water_depletion_{scenario}_{year}

historical (1999), SSP126 (2030, 2050, 2080), SSP370 (2030, 2050, 2080), SSP585 (2030, 2050, 2080)

WaterRisk

water_depletion_category

Water depletion category (Aqueduct 4.0)

water_risk/wri/v2/water_depletion_category_{scenario}_{year}

historical (1999), SSP126 (2030, 2050, 2080), SSP370 (2030, 2050, 2080), SSP585 (2030, 2050, 2080)

WaterRisk

water_stress

Water stress (Aqueduct 4.0)

water_risk/wri/v2/water_stress_{scenario}_{year}

historical (1999), SSP126 (2030, 2050, 2080), SSP370 (2030, 2050, 2080), SSP585 (2030, 2050, 2080)

WaterRisk

water_stress_category

Water stress category (Aqueduct 4.0)

water_risk/wri/v2/water_stress_category_{scenario}_{year}

historical (1999), SSP126 (2030, 2050, 2080), SSP370 (2030, 2050, 2080), SSP585 (2030, 2050, 2080)

WaterRisk

water_supply

Water supply in centimeters/year (Aqueduct 4.0)

water_risk/wri/v2/water_supply_{scenario}_{year}

historical (1999), SSP126 (2030, 2050, 2080), SSP370 (2030, 2050, 2080), SSP585 (2030, 2050, 2080)

Wind

max_speed

Max 1 minute sustained wind speed (Jupiter)

wind/jupiter/v1/max_1min_{scenario}_{year}

SSP126 (2020, 2030, 2040, 2050, 2075, 2100), SSP585 (2020, 2030, 2040, 2050, 2075, 2100)

Wind

max_speed

Max wind speed (IRIS)

wind/iris/v1/max_speed_{scenario}_{year}

historical (2010), SSP119 (2050), SSP245 (2050), SSP585 (2050)