- Created by Helen Setchell, last modified by Thomas Hodson on Feb 27, 2025
The ecCharts web map service allows you to create interactive ECMWF forecast charts over the internet or using a geographical information software (GIS) package or other software
Default version is 1.3.0
The default version of the ECMWF Web Map Service has been updated to the latest WMS Specification version 1.3.0.
The most important change in WMS1.3.0 is in the definition of the bounding box, and the coordinates system. The WMS 1.3 specification mandates that the axis ordering for geographic coordinate systems defined in the EPSG system be latitude/longitude, or y/x, and not longitude/latitude or x/y like in 1.1.1. CRS is used to define the coordinate reference system.
Then the 1.1.1 GetMap request
http://eccharts.ecmwf.int/wms/?token=public&request=GetMap&version=1.1.1&layers=z500_public&srs=EPSG:4326&bbox=-180,-90,180,90
becomes the following 1.3.0 request
In the new version, we have also included other improvements including a clean-up of errors messages the services provides.
What is ecCharts web map service (WMS)?
ECMWF's ecCharts web map service allows people to produce interactive plots of ECMWF's forecast charts using the OGC/WMS protocol.
ecCharts web map service is available to all, but public users have access to a more limited set of charts.
ecCharts concepts
- Products - the basic concept is a product. For example, a global chart showing 30 m wind and 2 m temperature with the outline of land areas and country boundaries would be a product.
- Layers - a product is made from layers. For example, a layer could be the outline of land areas; a latitude/longitude grid or contours of meteorological variable such as precipitation.
- Styles - a layer has styles and processing controls. For example, contour ranges and colours, and the accumulation period for precipitation.
- Projections - you can visualise a map on a projection, which in our implementation is a combination of map projection and bounding box area. For example, Europe (the bounding box area) can be viewed using either a polar stereographic or cylindrical map projection. Note that products can have default projections.
- Base time (BT) and validity time (VT) - exist for each gridded dataset, so also apply to each layer. Note that the time resolution of different layers can be different and can also change in time. For example the ENS timestep is longer after day 10 of the forecast. As a product is potentially a collection of layers, this means that the time availability of a given product is the intersection of all the time availabilities of all the layers that are part of the product. Simple!
How to use the ecCharts web map service (WMS)
Retrieve your ecCharts WMS access token
Because some of our products are not publicly available, ECMWF WMS service is protected by a token. This token should be added to all the requests.
A token can be obtained at the URL https://api.ecmwf.int/v1/key/. The token will give you access to our products according to your credentials.
In this documentation we will use the token public, that gives access to our public layers.
Browse available layers
Please go to the page below to see the full list of layers available in ecCharts.
https://ecCharts.ecmwf.int/tools/layer-list/
Note: some of the above layers ARE NOT available to the public.
Types of WMS requests
An OGC/WMS service offers 2 main requests:
GetCapabilities - to get the list of available layers
The GetCapability request is used to access the capabilities document which is an XML document describing the available layers with a short description, their styles and dimensions (in particular the time dimension).
The GetCapability
document can be found at:
http://eccharts.ecmwf.int/wms/?token=public&request=GetCapabilities&version=1.3.0
You can replace the token public by your own token.
You can enter this url in a web browser or in your (GIS or other) client software.
GetMap - to retrieve a map
For example to get z500
http://eccharts.ecmwf.int/wms/?token=public&request=GetMap&version=1.3.0&layers=z500_public
Accessing ecCharts WMS via a web browser
- Browse the capabilities document: http://eccharts.ecmwf.int/wms/?token=public&request=GetCapabilities&version=1.3.0
- The document is in XML format. Take a look through the available layers.
- Make a GetMap request using your browser. For example the following url will give you a map of 500 hPa geopotential height: http://eccharts.ecmwf.int/wms/?token=public&request=GetMap&version=1.3.0&layers=z500_public
- Add a map background to the plot: http://eccharts.ecmwf.int/wms/?token=public&request=GetMap&version=1.3.0&layers=background,z500_public
- Add other layers as needed,
Accessing ecCharts WMS using GIS software
- Launch your GIS software
- Specify the ecCharts WMS url: ..................
- Specify the XML capabilities document ...............................
- etc. ...................
Accessing ecCharts WMS using Leaflet
Leaflet is an open-source JaveScript library for mobile-friendly interactive maps.
Below is an example how to define an ecCharts layer in leaflet. Please note, you must specify "image/png" as format and provide a 'crs' for ecCharts layers to work in leaflet.
var wmslayer = L.tileLayer.wms('https://eccharts.ecmwf.int/wms/?', { token: 'public', format: 'image/png', crs: L.CRS.EPSG3857, layers: 'background,composition_co_surface,foreground', style: 'composition_uvindex_clearsky', transparent: true }).addTo(map);
Show Case
How the time dimension is handled
ECMWF keeps several runs of its forecast online. This is illustrated in the figure below. Each forecast is represented by a series of circles along a line pointing towards the future. The first circle represents the analysis time (also called reference time, base time or run time); subsequent circles represent forecast time steps. In the figure, it is assumed that not all the products from the most recent forecast are yet available.
At present, the WMS standard does not provide a way to access all the available model output, as it only recognises one time dimension.
The TIME
dimension (dotted line, dark green circle) represent alls available valid times. For each valid time, the most recent forecast is selected. This is in line with the recommendations of the OGC MetOcean Domain Working Group.
When requesting a map, the TIME
dimension must be specified according to the ISO 8601 standard.
Other dimensions
Many layers have attributes that can be specified in the GetMap
request as a dimension:
interval
for accumulation and maximum, for example for the Total Precipitation or the 10 metre wind gustthreshold
for the probabilities, for example 10m wind probability
The GetCapability
document provides the ranges of possible values for a given dimension as min/max/resolution
, with resolution
set to zero for continuous ranges or as value1/value2/.../valueN
for lists of discrete values . Each dimension as a unit and a default value.
When requesting a map, values for a given dimension must specified in a parameter which name is the same as the dimension name prefixed with dim_
, e.g. dim_interval
or dim_threshold
(see para. C.4.2 of the WMS specifications)
None of the layer dimensions support multipleValues
and nearestValue
.
Layer styles
Each of the layers have several possible styles. If the style is not specified, the first style in the list of possible style is used.
Getting information about a pixel value
The ECMWF WMS supports the GetFeatureInfo
and returns the value at the nearest grid point from a given location on the map. The information is provided either as plain text or as html.
Getting the legend of a layer
You can access the legend of a layer using the GetLegend service :
https://eccharts.ecmwf.int/wms/?token=public&request=GetLegend&layers=t850_public
Note that this service is described in the GetCapabilities documents.
Error handling
The WMS will return an XML message for the following errors:
InvalidFormat : | Request contains a format not offered by this service. |
InvalidSRS : | Request contains an SRS not offered by this service for one or more of the layers in the request. |
LayerNotDefined : | Request is for a layer not offered by this service. |
StyleNotDefined : | Request is for a layer in a style not offered by this service. |
LayerNotQueryable : | GetFeatureInfo request is applied to a layer which is not declared queryable. |
For any other errors, an HTTP error will be returned.
- Get help from the Support Portal
- Report a bug or issue through the Support Portal
- Problems logging in or with password? See our Login and authentication information