{ "cells": [ { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "# DMI API Tutorial\n", "\n", "```{post} 2022-02-22\n", ":tags: open science\n", ":author: Adam R. Jensen\n", ":image: 1\n", "```\n", "\n", "This tutorial gives an introduction to how to access meteorological observation data from the [Danish Meteorological Institute (DMI)](https://www.dmi.dk/friedata/dokumentation/getting-started). Data is retrieved from the meteorological observation data API (v2). Note that these near-real-time observational data are not quality-controlled. Quality-controlled hourly data is available from another API.\n", "\n", "**This blog post was updated on 2026-03-26 and no longer requires an api key. This new API endpoint (opendataapi.dmi.dk) was made available on 2025-12-02. The old API endpoint (dmigw.govcloud.dk) will retire in 2026-06-30.**\n", "\n", "The tutorial uses the Python programming language and is in the format of a Jupyter Notebook. The notebook can be downloaded and run locally, allowing you to quickly get started downloading data. Part 1 of the tutorial provides basic background on working with the API, whereas Part 2 provides a complete example.\n", "\n", "If you're new to the DMI observation data, I recommend that you check out some of the following links:\n", "1. [Meteorological observations data](https://www.dmi.dk/friedata/dokumentation/meteorological-observations-data)\n", "2. [Meteorological observations API](https://www.dmi.dk/friedata/dokumentation/meteorological-observation-api)\n", "3. [Station list](https://www.dmi.dk/friedata/dokumentation/data/meteorological-observation-data-stations)\n", "4. [Station list explained](https://www.dmi.dk/friedata/dokumentation/stations-lists-explained)\n", "5. [FAQ](https://www.dmi.dk/friedata/dokumentation/faq)\n", "6. [Terms and conditions](https://www.dmi.dk/friedata/dokumentation/terms-of-use)\n", "7. [Release notes](https://www.dmi.dk/friedata/dokumentation/release-notes)" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [ "hide-cell" ] }, "source": [ "
\n", "\n", "The following code blocks retrieve a list of all the DMI stations (both in Denmark and in Greenland) and plot them on a map using the Python package Folium." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "editable": true, "scrolled": true, "slideshow": { "slide_type": "" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typeidtypecoordinatesownercountryanemometerHeightwmoCountryCodeoperationFromparameterId...typestationHeightregionIdnamewmoStationIdoperationToupdatedstationIdvalidTostatus
2Featurefb2d82b4-a527-6430-d860-7b512397237dPoint[-68.7031, 76.5311]Mittafik/Grønlandske lufthavneGRLNaN60701948-12-31T00:00:00Z[cloud_cover, cloud_height, humidity, pressure......Synop77.004Pituffik04202NoneNone04202NoneActive
4Featureb4d0f681-3e73-ca98-817c-620c78f6b9e7Point[10.2705, 57.4029]DMIDNKNaNNone2011-10-01T00:00:00Z[snow_cover_man, snow_depth_man]...Manual snow61.00NoneLendumNoneNoneNone20085NoneActive
6Featurea544dec9-e92e-d32f-cf5a-8c0639882ed6Point[9.9592, 57.2825]DMIDNKNaNNone2024-12-16T00:00:00Z[snow_cover_man, snow_depth_man]...Manual snow30.50NoneBrønderslevNoneNoneNone20119NoneActive
7Featureb3a7c23b-644a-4afe-c1b8-c8368a25d816Point[-73.1208, 76.7333]DMIGRLNaN60701980-06-15T00:00:00Z[humidity, pressure, pressure_at_sea, temp_dew......GIWS11.004Kitsissut04203NoneNone04203NoneActive
10Feature487ad7cc-c49a-3581-cb7e-91a7eb8c3c59Point[-69.3744, 77.4853]Mittafik/Grønlandske lufthavneGRLNaN60701964-01-01T00:00:00Z[cloud_cover, cloud_height, humidity, humidity......Synop16.004Mittarfik Qaanaaq04205NoneNone04205NoneActive
..................................................................
675Featurefef7d6f1-ed82-004e-4e6d-bb24d348ae51Point[14.7718, 55.2979]DMIDNK10.060801953-03-01T00:00:00Z[cloud_cover, cloud_height, humidity, humidity......Synop7.816Hammer Odde Fyr06193NoneNone06193NoneActive
678Feature48556d98-a86d-3a8d-255e-608a26a609dfPoint[15.0953, 55.0557]DMIDNK10.060802002-09-19T00:00:00Z[humidity, humidity_past1h, leav_hum_dur_past1......Synop23.136Nexø Vest06197NoneNone06197NoneActive
679Feature49d27fda-cc01-48fb-6ffb-2367a549be12Point[10.6318, 57.7363]DMIDNKNaNNone2001-03-02T00:00:00Z[snow_cover_man, snow_depth_man]...Manual snow3.00NoneSkagen FyrNoneNoneNone20000NoneActive
680Feature0cee3919-f8c3-33d7-a10c-52b4fc686855Point[10.1073, 57.5705]DMIDNKNaNNone2011-10-01T00:00:00Z[snow_cover_man, snow_depth_man]...Manual snow8.00NoneUggerbyNoneNoneNone20030NoneActive
681Feature3d2aa7f9-b617-5660-d7bf-8207f0287f4bPoint[9.7608, 57.4185]DMIDNKNaNNone2011-10-01T00:00:00Z[snow_cover_man, snow_depth_man]...Manual snow22.00NoneNørre Lyngby NNoneNoneNone20055NoneActive
\n", "

265 rows × 23 columns

\n", "
" ], "text/plain": [ " type id type \\\n", "2 Feature fb2d82b4-a527-6430-d860-7b512397237d Point \n", "4 Feature b4d0f681-3e73-ca98-817c-620c78f6b9e7 Point \n", "6 Feature a544dec9-e92e-d32f-cf5a-8c0639882ed6 Point \n", "7 Feature b3a7c23b-644a-4afe-c1b8-c8368a25d816 Point \n", "10 Feature 487ad7cc-c49a-3581-cb7e-91a7eb8c3c59 Point \n", ".. ... ... ... \n", "675 Feature fef7d6f1-ed82-004e-4e6d-bb24d348ae51 Point \n", "678 Feature 48556d98-a86d-3a8d-255e-608a26a609df Point \n", "679 Feature 49d27fda-cc01-48fb-6ffb-2367a549be12 Point \n", "680 Feature 0cee3919-f8c3-33d7-a10c-52b4fc686855 Point \n", "681 Feature 3d2aa7f9-b617-5660-d7bf-8207f0287f4b Point \n", "\n", " coordinates owner country \\\n", "2 [-68.7031, 76.5311] Mittafik/Grønlandske lufthavne GRL \n", "4 [10.2705, 57.4029] DMI DNK \n", "6 [9.9592, 57.2825] DMI DNK \n", "7 [-73.1208, 76.7333] DMI GRL \n", "10 [-69.3744, 77.4853] Mittafik/Grønlandske lufthavne GRL \n", ".. ... ... ... \n", "675 [14.7718, 55.2979] DMI DNK \n", "678 [15.0953, 55.0557] DMI DNK \n", "679 [10.6318, 57.7363] DMI DNK \n", "680 [10.1073, 57.5705] DMI DNK \n", "681 [9.7608, 57.4185] DMI DNK \n", "\n", " anemometerHeight wmoCountryCode operationFrom \\\n", "2 NaN 6070 1948-12-31T00:00:00Z \n", "4 NaN None 2011-10-01T00:00:00Z \n", "6 NaN None 2024-12-16T00:00:00Z \n", "7 NaN 6070 1980-06-15T00:00:00Z \n", "10 NaN 6070 1964-01-01T00:00:00Z \n", ".. ... ... ... \n", "675 10.0 6080 1953-03-01T00:00:00Z \n", "678 10.0 6080 2002-09-19T00:00:00Z \n", "679 NaN None 2001-03-02T00:00:00Z \n", "680 NaN None 2011-10-01T00:00:00Z \n", "681 NaN None 2011-10-01T00:00:00Z \n", "\n", " parameterId ... type \\\n", "2 [cloud_cover, cloud_height, humidity, pressure... ... Synop \n", "4 [snow_cover_man, snow_depth_man] ... Manual snow \n", "6 [snow_cover_man, snow_depth_man] ... Manual snow \n", "7 [humidity, pressure, pressure_at_sea, temp_dew... ... GIWS \n", "10 [cloud_cover, cloud_height, humidity, humidity... ... Synop \n", ".. ... ... ... \n", "675 [cloud_cover, cloud_height, humidity, humidity... ... Synop \n", "678 [humidity, humidity_past1h, leav_hum_dur_past1... ... Synop \n", "679 [snow_cover_man, snow_depth_man] ... Manual snow \n", "680 [snow_cover_man, snow_depth_man] ... Manual snow \n", "681 [snow_cover_man, snow_depth_man] ... Manual snow \n", "\n", " stationHeight regionId name wmoStationId operationTo \\\n", "2 77.00 4 Pituffik 04202 None \n", "4 61.00 None Lendum None None \n", "6 30.50 None Brønderslev None None \n", "7 11.00 4 Kitsissut 04203 None \n", "10 16.00 4 Mittarfik Qaanaaq 04205 None \n", ".. ... ... ... ... ... \n", "675 7.81 6 Hammer Odde Fyr 06193 None \n", "678 23.13 6 Nexø Vest 06197 None \n", "679 3.00 None Skagen Fyr None None \n", "680 8.00 None Uggerby None None \n", "681 22.00 None Nørre Lyngby N None None \n", "\n", " updated stationId validTo status \n", "2 None 04202 None Active \n", "4 None 20085 None Active \n", "6 None 20119 None Active \n", "7 None 04203 None Active \n", "10 None 04205 None Active \n", ".. ... ... ... ... \n", "675 None 06193 None Active \n", "678 None 06197 None Active \n", "679 None 20000 None Active \n", "680 None 20030 None Active \n", "681 None 20055 None Active \n", "\n", "[265 rows x 23 columns]" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import requests\n", "import pandas as pd\n", "r = requests.get('https://opendataapi.dmi.dk/v2/metObs/collections/station/items')\n", "stations = pd.json_normalize(r.json()['features'])\n", "stations.columns = [c.replace('properties.', '').replace('geometry.', '') for c in stations.columns]\n", "\n", "# Filter out inactive stations\n", "stations = stations[stations['status'] == 'Active']\n", "# This line removes previous locations of the same station\n", "# thus only the newest/current location is shown\n", "stations = stations[stations['validTo'].isna()]\n", "stations" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [ "remove-input" ] }, "outputs": [ { "data": { "text/html": [ "
Make this Notebook Trusted to load map: File -> Trust Notebook
" ], "text/plain": [ "" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import folium\n", "from folium import plugins\n", "\n", "EsriImagery = \"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}\"\n", "EsriAttribution = \"Tiles © Esri — Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community\"\n", "\n", "# Create Folium map\n", "m = folium.Map(\n", " location=[75, -5],\n", " zoom_start=2, min_zoom=2, max_bounds=True,\n", " control_scale=True, # Adds distance scale in lower left corner\n", " tiles='openstreetmap',\n", ")\n", "\n", "# Add each station to the map\n", "for index, row in stations.iterrows():\n", " folium.CircleMarker(\n", " location=row['coordinates'][::-1], # switch latitude/longitude\n", " popup=f\"Station ID: {row['stationId']}\\n{row['name']}, {row['country']}\",\n", " tooltip=f\"{row['name']}, {row['country']}\",\n", " radius=5, color='blue',\n", " fill_color='blue', fill=True).add_to(m)\n", "\n", "folium.raster_layers.TileLayer(EsriImagery, name='World imagery', attr=EsriAttribution, show=False).add_to(m)\n", "folium.LayerControl(position='topright').add_to(m)\n", "\n", "# Additional options and plugins\n", "folium.plugins.Fullscreen().add_to(m) # Add full screen button to map\n", "folium.LatLngPopup().add_to(m) # Show latitude/longitude when clicking on the map\n", "\n", "# Show the map\n", "m" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## Part 1: Retrieving data\n", "Part 1 of this tutorial will show how to request data and convert it to a table format. Part 2 will deal with how to request specific data and more advanced data handling.\n", "\n", "First, the necessary libraries have to be imported:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import requests # library for making HTTP requests\n", "import pandas as pd # library for data analysis\n", "import datetime as dt # library for handling date and time objects" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "\n", "In the following code block, data is retrieved using the ``requests.get`` function. Further information on REST APIs and HTTP request methods can be found [here](https://restfulapi.net/http-methods/).\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "DMI_URL = 'https://opendataapi.dmi.dk/v2/metObs/collections/observation/items'\n", "r = requests.get(DMI_URL) # Issues a HTTP GET request\n", "print(r)" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "
\n", "\n", "The [response status code](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes) indicates whether the request was successful or not. A 200 code means that the retrieval was successful. \n", "

\n", "\n", "Next, we extract the JSON file containing the data from the returned request object. [JSON](https://restfulapi.net/introduction-to-json/) is a human-readable format for data exchange." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "dict_keys(['type', 'features', 'timeStamp', 'numberReturned', 'links'])\n" ] } ], "source": [ "json = r.json() # Extract JSON data\n", "print(json.keys()) # Print the keys of the JSON dictionary" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "When inspecting the json object, it can be noticed that the measurement data is contained within the features:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'type': 'Feature',\n", " 'id': '4822a60d-b125-f459-1a54-443f16818f20',\n", " 'geometry': {'type': 'Point', 'coordinates': [9.8505, 57.0963]},\n", " 'properties': {'parameterId': 'temp_dew',\n", " 'created': '2025-08-24T23:49:42.007487Z',\n", " 'value': 3.0,\n", " 'observed': '2004-02-13T21:10:00Z',\n", " 'stationId': '06030'}},\n", " {'type': 'Feature',\n", " 'id': '4822d607-fbad-a37c-b8f8-b02ea7e4c969',\n", " 'geometry': {'type': 'Point', 'coordinates': [10.3305, 55.4749]},\n", " 'properties': {'parameterId': 'humidity',\n", " 'created': '2025-08-24T23:49:41.110723Z',\n", " 'value': 97.0,\n", " 'observed': '2004-02-13T21:10:00Z',\n", " 'stationId': '06120'}}]" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "json['features'][:2]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "The JSON object can be converted to a convenient table (pandas DataFrame) using ``pd.json_normalize``:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typeidgeometry.typegeometry.coordinatesproperties.parameterIdproperties.createdproperties.valueproperties.observedproperties.stationId
0Feature4822a60d-b125-f459-1a54-443f16818f20Point[9.8505, 57.0963]temp_dew2025-08-24T23:49:42.007487Z3.02004-02-13T21:10:00Z06030
1Feature4822d607-fbad-a37c-b8f8-b02ea7e4c969Point[10.3305, 55.4749]humidity2025-08-24T23:49:41.110723Z97.02004-02-13T21:10:00Z06120
2Feature492e4463-96c5-c1af-526f-3a26aa9103f0Point[10.8694, 55.7435]wind_max2025-08-24T23:49:42.753743Z5.12004-02-13T21:10:00Z06159
3Feature49608f7e-cd15-22ac-083d-b8089d5463c7Point[11.3285, 55.2465]precip_dur_past10min2025-08-24T23:49:41.632545Z0.02004-02-13T21:10:00Z06136
4Feature49f01d45-bce6-0d5e-54c3-14b2f2cfabdcPoint[11.2787, 56.0083]temp_dry2025-08-24T23:49:42.604949Z1.72004-02-13T21:10:00Z06169
\n", "
" ], "text/plain": [ " type id geometry.type \\\n", "0 Feature 4822a60d-b125-f459-1a54-443f16818f20 Point \n", "1 Feature 4822d607-fbad-a37c-b8f8-b02ea7e4c969 Point \n", "2 Feature 492e4463-96c5-c1af-526f-3a26aa9103f0 Point \n", "3 Feature 49608f7e-cd15-22ac-083d-b8089d5463c7 Point \n", "4 Feature 49f01d45-bce6-0d5e-54c3-14b2f2cfabdc Point \n", "\n", " geometry.coordinates properties.parameterId properties.created \\\n", "0 [9.8505, 57.0963] temp_dew 2025-08-24T23:49:42.007487Z \n", "1 [10.3305, 55.4749] humidity 2025-08-24T23:49:41.110723Z \n", "2 [10.8694, 55.7435] wind_max 2025-08-24T23:49:42.753743Z \n", "3 [11.3285, 55.2465] precip_dur_past10min 2025-08-24T23:49:41.632545Z \n", "4 [11.2787, 56.0083] temp_dry 2025-08-24T23:49:42.604949Z \n", "\n", " properties.value properties.observed properties.stationId \n", "0 3.0 2004-02-13T21:10:00Z 06030 \n", "1 97.0 2004-02-13T21:10:00Z 06120 \n", "2 5.1 2004-02-13T21:10:00Z 06159 \n", "3 0.0 2004-02-13T21:10:00Z 06136 \n", "4 1.7 2004-02-13T21:10:00Z 06169 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.json_normalize(json['features']) # Convert JSON object to a Pandas DataFrame\n", "df.head() # Print the first five rows of the DataFrame" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "The timestamps strings can be converted to a datetime object using the pandas ``to_datetime`` function." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 2004-02-13 21:10:00+00:00\n", "1 2004-02-13 21:10:00+00:00\n", "2 2004-02-13 21:10:00+00:00\n", "3 2004-02-13 21:10:00+00:00\n", "4 2004-02-13 21:10:00+00:00\n", "Name: time, dtype: datetime64[ns, UTC]" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df['time'] = pd.to_datetime(df['properties.observed'])\n", "df['time'].head() # Print the first five timestamps" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "Last, we will generate a list of all the available parameters:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['temp_dew' 'humidity' 'wind_max' 'precip_dur_past10min' 'temp_dry'\n", " 'pressure' 'wind_speed' 'sun_last10min_glob' 'wind_dir' 'weather'\n", " 'pressure_at_sea' 'temp_soil' 'precip_past10min' 'cloud_height'\n", " 'visibility' 'radia_glob' 'cloud_cover' 'temp_grass' 'wind_min'\n", " 'visib_mean_last10min' 'leav_hum_dur_past10min' 'temp_grass_mean_past1h'\n", " 'wind_gust_always_past1h' 'wind_max_per10min_past1h' 'temp_mean_past1h'\n", " 'temp_soil_mean_past1h']\n" ] } ], "source": [ "parameter_ids = df['properties.parameterId'].unique() # Generate a list of unique parameter ids\n", "print(parameter_ids) # Print all unique parameter ids" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "\n", "## Part 2: Requesting specific data\n", "\n", "The above example was a heavily simplied example to illustrate how the API can be accessed. For most applications you probably want to specify query criterias, such as:\n", "1. Meterological stations (e.g. 04320, 06074, etc.)\n", "2. Parameters (e.g. wind_speed, humidity, etc.)\n", "3. Time frame (to and from time)\n", "4. Limit (maximum number of observations)\n", "\n", "*Click the \"View to show\" button below to see a list of a all stations and parameters.*" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "all_stations = [\n", " '04203', '04208', '04214', '04220', '04228', '04242', '04250',\n", " '04253', '04266', '04271', '04272', '04285', '04301', '04312',\n", " '04313', '04320', '04330', '04339', '04351', '04360', '04373',\n", " '04382', '04390', '05005', '05009', '05015', '05031', '05035',\n", " '05042', '05065', '05070', '05075', '05081', '05085', '05089',\n", " '05095', '05105', '05109', '05135', '05140', '05150', '05160',\n", " '05165', '05169', '05185', '05199', '05202', '05205', '05220',\n", " '05225', '05269', '05272', '05276', '05277', '05290', '05296',\n", " '05300', '05305', '05320', '05329', '05343', '05345', '05350',\n", " '05355', '05365', '05375', '05381', '05395', '05400', '05406',\n", " '05408', '05435', '05440', '05450', '05455', '05469', '05499',\n", " '05505', '05510', '05529', '05537', '05545', '05575', '05735',\n", " '05880', '05889', '05935', '05945', '05970', '05986', '05994',\n", " '06019', '06031', '06032', '06041', '06049', '06051', '06052',\n", " '06056', '06058', '06065', '06068', '06072', '06073', '06074',\n", " '06079', '06081', '06082', '06088', '06093', '06096', '06102',\n", " '06116', '06119', '06123', '06124', '06126', '06132', '06135',\n", " '06136', '06138', '06141', '06147', '06149', '06151', '06154',\n", " '06156', '06159', '06168', '06169', '06174', '06181', '06183',\n", " '06184', '06186', '06187', '06188', '06193', '06197', '20000',\n", " '20030', '20055', '20085', '20228', '20279', '20315', '20375',\n", " '20400', '20552', '20561', '20600', '20670', '21020', '21080',\n", " '21100', '21120', '21160', '21208', '21368', '21430', '22020',\n", " '22080', '22162', '22189', '22232', '22410', '23100', '23133',\n", " '23160', '23327', '23360', '24043', '24102', '24142', '24171',\n", " '24380', '24430', '24490', '25045', '25161', '25270', '25339',\n", " '26210', '26340', '26358', '26450', '27008', '27082', '28032',\n", " '28110', '28240', '28280', '28385', '28552', '28590', '29020',\n", " '29194', '29243', '29330', '29440', '30075', '30187', '30215',\n", " '30414', '31040', '31185', '31199', '31259', '31350', '31400',\n", " '31509', '31570', '32110', '32175', '34270', '34320', '34339'\n", "]\n", "\n", "all_parameters = [\n", " # Cloud cover and height\n", " 'cloud_cover', 'cloud_height',\n", " # Humdity\n", " 'humidity', 'humidity_past1h',\n", " # Precipitation\n", " 'precip_past10min', 'precip_past1h', 'precip_past24h',\n", " # Pressure\n", " 'pressure', 'pressure_at_sea',\n", " # Radiation\n", " 'radia_glob', 'radia_glob_past1h',\n", " # Temperature\n", " 'temp_dew', 'temp_dry', 'temp_max_past12h', 'temp_max_past1h',\n", " 'temp_mean_past1h', 'temp_min_past12h', 'temp_min_past1h',\n", " # Visibilty and weather\n", " 'visib_mean_last10min', 'visibility', 'weather',\n", " # Wind speed and direction\n", " 'wind_dir', 'wind_dir_past1h', 'wind_gust_always_past1h', 'wind_max',\n", " 'wind_max_per10min_past1h', 'wind_min', 'wind_min_past1h',\n", " 'wind_speed', 'wind_speed_past1h',\n", "]" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "
\n", "\n", "Due to poor design of the API, it is only possible to request one station or all stations, and similarly, it is only possible to request one parameter or all parameters. To be able to select a subset of stations or parameters it is therefore necessary to loop as shown below. This also avoids hitting the rather low maximum amount of data that can be transferred for each request. The implementation below is most suitable for downloading a few stations and a few parameters, and will incur a significant performance penalty if downloading data for all stations." ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
stationId0425006188
parameterIdradia_globwind_speedradia_globwind_speed
time
2022-01-01 00:00:00+00:000.03.60.04.9
2022-01-01 00:10:00+00:000.04.00.05.5
2022-01-01 00:20:00+00:000.03.80.04.8
2022-01-01 00:30:00+00:000.03.80.05.3
2022-01-01 00:40:00+00:000.03.80.05.9
\n", "
" ], "text/plain": [ "stationId 04250 06188 \n", "parameterId radia_glob wind_speed radia_glob wind_speed\n", "time \n", "2022-01-01 00:00:00+00:00 0.0 3.6 0.0 4.9\n", "2022-01-01 00:10:00+00:00 0.0 4.0 0.0 5.5\n", "2022-01-01 00:20:00+00:00 0.0 3.8 0.0 4.8\n", "2022-01-01 00:30:00+00:00 0.0 3.8 0.0 5.3\n", "2022-01-01 00:40:00+00:00 0.0 3.8 0.0 5.9" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Specify the desired start and end time\n", "start_time = pd.Timestamp(2022, 1, 1)\n", "end_time = pd.Timestamp(2022, 1, 15)\n", "\n", "# Specify one or more station IDs or all_stations\n", "stationIds = ['04250', '06188']\n", "# Specify one or more parameter IDs or all_parameters\n", "parameterIds = ['radia_glob', 'wind_speed']\n", "\n", "# Derive datetime specifier string\n", "datetime_str = start_time.tz_localize('UTC').isoformat() + '/' + end_time.tz_localize('UTC').isoformat()\n", "\n", "dfs = []\n", "for station in stationIds:\n", " for parameter in parameterIds:\n", " # Specify query parameters\n", " params = {\n", " 'datetime' : datetime_str,\n", " 'stationId' : station,\n", " 'parameterId' : parameter,\n", " 'limit' : '300000', # max limit\n", " }\n", "\n", " # Submit GET request with url and parameters\n", " r = requests.get(DMI_URL, params=params)\n", " # Extract JSON object\n", " json = r.json() # Extract JSON object\n", " # Convert JSON object to a MultiIndex DataFrame and add to list\n", " dfi = pd.json_normalize(json['features'])\n", " if dfi.empty is False:\n", " dfi['time'] = pd.to_datetime(dfi['properties.observed'])\n", " # Drop other columns\n", " dfi = dfi[['time', 'properties.value', 'properties.stationId', 'properties.parameterId']]\n", " # Rename columns, e.g., 'properties.stationId' becomes 'stationId'\n", " dfi.columns = [c.replace('properties.', '') for c in dfi.columns]\n", " # Drop identical rows (considers both value and time stamp)\n", " dfi = dfi[~dfi.duplicated()]\n", " dfi = dfi.set_index(['parameterId', 'stationId', 'time'])\n", " dfi = dfi['value'].unstack(['stationId','parameterId'])\n", " dfs.append(dfi)\n", "\n", "df = pd.concat(dfs, axis='columns').sort_index()\n", "df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "If the request was succesfull, the dataframe ``df`` now contains the requested data. The dataframe is a MultiIndex dataframe and has two column levels (station and parameter). The index is the observation time.\n", "\n", "MultiIndex dataframes are extremely convenient and versatile, though they do take some time getting used to. As an example, the below command demonstrates how to get the wind speed from the station 04250 for four days in December:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "time\n", "2022-01-05 00:00:00+00:00 9.2\n", "2022-01-05 00:10:00+00:00 7.5\n", "2022-01-05 00:20:00+00:00 6.1\n", "2022-01-05 00:30:00+00:00 4.4\n", "2022-01-05 00:40:00+00:00 4.4\n", " ... \n", "2022-01-14 23:20:00+00:00 5.5\n", "2022-01-14 23:30:00+00:00 4.7\n", "2022-01-14 23:40:00+00:00 4.8\n", "2022-01-14 23:50:00+00:00 5.0\n", "2022-01-15 00:00:00+00:00 4.4\n", "Freq: 10min, Name: (04250, wind_speed), Length: 1441, dtype: float64" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.loc['2022-01-05':, ('04250', 'wind_speed')]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "The last step is to visualize the data. As an example, we'll visualize the wind speed and global horizontal irradiance (GHI) for the station 04250." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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qeIGPJYqVcratWtnO3bsOG/b7777zho1amT58uWzK6+80h566CH79ddf02yzfft2GzJkiFWvXt3y589vV199tTVu3NjWr19/3u+bP3++tW/f3sqWLWt58+a1ihUr2sCBA+23336L1OsOAACAKGMwZAbatGljq1evtrZt21q1atXs4MGDNmHCBPv9998tOTnZbrzxRrfdzz//bDVq1LCCBQtav3793ONjxoxxiflXX31lOXPmdNsNGjTIpk6daq1bt7Y6derYiRMnbPLkyfbjjz/a4sWLrX79+qn/duHChe2aa66xFi1auN+zdetWmzRpkku8N27caHny5In2+wIAAACXiEQ7A2vWrLFatWqlJsqyc+dOq1q1qkvCZ8yY4e7r3bu3TZs2zVWslRTL0qVLrUGDBi6R7tmzp7tvw4YNrjKtqrfn6NGjVqlSJatQoYKtWrUq9X7N03333Xenieftt9+2rl272uuvv+7m7wYAAIC/kWiH6eabb05NnKVYsWJ211132Zw5c9Jsp6T62muvdUn3hajCrcRaSfeFaO7uAgUK2OOPP27/+c9/wg0bAAAAMUaPdhhSUlLs0KFDrrVD9u/fb4cPH3aV7/TUHrJp06ZMf6daUrzfl9l2Esq2AAAAiD8S7TBo2XUl1xqoKAcOHHDfNbAxPd137Ngx+/PPPzP8fStXrrS1a9em/r4LGTlypGXPnt21rQAAAMD/SLRDpB7sxx57zOrWret6peXMmTPue65cuc7bPnfu3Gm2SU+V8I4dO7ol3TUbyYXMmjXLDaTUzCPly5cPNWQAAADEUY54/uNZhdo2NBWfZhZ57733XGVZvNk/glWtz549m2abQKdPn7YmTZq4vmsNggwcIBms6t29e3dLTEy04cOHR/CvAgAAQDSRaGdC0/Ddf//9bg5rJb2ads/jtYx4LSSBdJ/m1E5f7f7rr7+sVatWtmXLFluyZEnqNIHBbN682Zo1a+a2UYKfIwcvFwAAQFZB5nYBqko3bdrULVKj2UMqV66c5vESJUpYkSJFgi46ozm0tThNoHPnzlmXLl1s2bJlbpYSzVaSkR9++MEtglO0aFFbuHDhBaveAAAA8B96tDPwzz//uEGKGqw4d+5c15ud0fR8CxYssH379qXep0RaybkWuwnUt29fmz17tk2cONFVtS/UqtKwYUO77LLLXNVbyTwAAACyFubRzkD//v1t3LhxrqKtpdfT69y5s/uuBFsrQyYkJFhSUpJbGXL06NFWsmRJt4y71zoyduxYGzBggEvYtchNei1btnRLvYsq4Wob0SBJLZATSPN2azEcAAAA+BuJdga0MuPnn39+wTm1Pdu2bXMLyWhgo1aS1MBJLSqjpNjTrVs3mz59eoa/b8+ePVamTJn/vSjZsmW4ndpNtMANAAAA/I1EGwAAAIgCerQBAACAKCDRBgAAAKKARBsAAACIAhJtAAAAIApItAEAAIAoINEGAAAAooBEGwAAAIgCEm0AAAAgCki0AQAAgCgg0QYAAACigEQbAAAAiAISbQAAAMAi778igBaSRELdygAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "station = '04250'\n", "params = ['wind_speed', 'radia_glob'] # parameters to plot\n", "\n", "# Generate plot of data\n", "ax = df[station][params].plot(figsize=(8,5), legend=False, fontsize=12, rot=0, subplots=True)\n", "ax[0].set_ylabel('Air temperature [°C]', size=12)\n", "ax[1].set_ylabel('Global horizontal\\nirradiance [W/m$^2$]', size=12)\n", "ax[1].set_xlabel(None);" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.9" } }, "nbformat": 4, "nbformat_minor": 4 }