ERA5 monthly average SSRD map


I am trying to use the toolbox for visualizing monthly average surface solar radiation downwards from ERA5 to a geographical distribution map.

Right now i have been able to get one specific time point showing on the map, but i would want to have calculated monthly averages.

F.e an application where it would be able to choose a specific month to view the SSRD distribution.

I have messed around with the ready made example applications in the toolbox to get the desired outcome, but have only gotten error messages so far. Have changed variables etc.

I would be very greatful if someone has any advice or could help me with this matter.

Best regards


Hi Markus,

Here is an application plotting monthly averages of SSRD (you need to be logged into the CDS to access the app).

The monthly averages are already calculated and distributed on the CDS and the application only retrieves the data one month at a time and plots it. 

Is that what you were after?

If you want advice on your own processing and script share you application or copy you code here and I can try to help.



Hi Vivien,

thank you for the answer!

The colors of the map look about right but the scale is way off i think. (it is much higher than it should be).

Maybe the unit is off?

i changed it more suitable for myself, but it sometimes exceeds the value over 10x than it should be:

import cdstoolbox as ct
import calendar

layout = {
'input_ncols': 2,
'output_align': 'bottom'
@ct.input.dropdown('year', label='Year', values=range(2000, 2019))
@ct.input.dropdown('month', label='Month', values=range(1, 13))
def application(year, month):

data = ct.catalogue.retrieve(
'year': year,
'month': month,
'grid': ['0.1', '0.1']

fig = ct.cdsplot.geomap(
title='Monthly average SSRD, {} {}'.format(calendar.month_name[month], year)


return fig, data

Hi Markus,

Unfortunately I don't know much about this specific dataset. Probably understanding how the spatial and temporal aggregation is done would help explaining the difference between the values you see and the ones you expect.

One thing I am puzzled by is that the documentation indicates J m-2 while the retrieved data in the Toolbox is in W m-2. Maybe Michela Giusti can help on that?

The documentation also says:

The units are joules per square metre (J m-2 ). To convert to watts per square metre (W m-2 ), the accumulated values should be divided by the accumulation period expressed in seconds.

What unit do you usually work with Markus?



Hi Markus,

Downloading the data from the CDS as a netcdf (which is in J m-2) and converting it to W m-2 I do get data which are of the order of ~10 W m-2 instead of ~100 W m-2 as seen in the Toolbox.

It does look like a conversion error on the monthly aggregates in the Toolbox. I have flagged up the issue and it is being investigated.

I will keep you posted.



Yes that makes sense now why the values are so much higher. Both joules and watts are used, but i work with W/m2.
Thank you for your time investigating this!

Best wishes,