In an attempt to do some climate and climate change vulgarization, in relation to vegetation sciences, I would need to find some reference sourced world map of annual mean temperature (monthly means would be nice but I'm looking for annual means as my principal focus) , in common raster or vector format which I could readily open with QGIS (or which I could easily georeference), something similar to these kind of maps (which I've found for precipitations) :

Rustemeier et al. 2020. « GPCC Precipitation Climatology Version 2020 at 0.25°: Monthly Land-Surface Precipitation Climatology for Every Month and the Total Year from Rain-Gauges built on GTS-based and Historic Data: Globally Gridded Monthly Totals ». Global Precipitation Climatology Centre (GPCC). https://doi.org/10.5676/DWD_GPCC/CLIM_M_V2020_025


My researches : Looking the generic web browser as well as scholar browser I mostly encounter

  1. some sourceless maps on website of poor credibility like : https://www.eldoradoweather.com/climate/world-maps/world-annual-temps-map.html which is exactly the kind of map which I'm looking for (well it'd be nice to find some better resolution but, it's ok), the problem with the eldoradowheather.com is that they give no source for the data, so I won't trust it, and would not like to base my vulgarization work on such poor information.

as well as

  1. maps of anomalies to normal temperatures like this on Berkeley : http://berkeleyearth.org/global-temperature-report-for-2020/ but this is NOT what I'm looking for,

Some results that look good but I'm unable to handle :

My question is closely related to this one : Looking for 0.25x0.25 spatial resolution grid data for land surface temperature/precipitation but It would be ok to be oriented to maps at other resolutions, however, as already mentioned, the finer the better.

1 Answer 1


Finally I found what I was looking for with this publication in Nature's Scientific Data :

Karger, Dirk Nikolaus, Olaf Conrad, Jürgen Böhner, Tobias Kawohl, Holger Kreft, Rodrigo Wilber Soria-Auza, Niklaus E. Zimmermann, H. Peter Linder, et Michael Kessler. 2017. « Climatologies at High Resolution for the Earth’s Land Surface Areas ». Scientific Data 4 (1): 170122. https://doi.org/10.1038/sdata.2017.122.


The data are described and links to download are given at the "Data Records" chapter : https://www.nature.com/articles/sdata2017122#Sec18

On the Chelsa website : https://chelsa-climate.org/downloads/ go to Download, then clic the lattest version, then in this new page : https://envicloud.wsl.ch/#/?prefix=chelsa%2Fchelsa_V2%2FGLOBAL%2F browse to climotologies / time period of interest / bio / and download the maps of interest at TIF format, for the mean annual temperature map it's the CHELSA_bio1_1981-2010_V.2.1.tif

World map of Annual Mean Temperature [°C], for the 1981-2010 period

This solution was found making a new search on GIS Stack Exchange for just "temperature" instead of "mean annual temperature world map", the data mentioned above where pointed out by @Trevor-J-Smith. Many thanks to him !


The CHELSA dataset have a lot of climatic related world maps of high resolution (~ 1km) which are all georeferenced and ready to use under CC0 ! It's exactly what I was looking for.

Here is the content of the CHELSA_bio1_1981-2010_V.2.1.qml file to import the symbology I reproduced on the map in QGIS 3.10

<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
<qgis maxScale="0" version="3.10.4-A Coruña" hasScaleBasedVisibilityFlag="0" styleCategories="AllStyleCategories" minScale="1e+08">
    <property value="false" key="WMSBackgroundLayer"/>
    <property value="false" key="WMSPublishDataSourceUrl"/>
    <property value="0" key="embeddedWidgets/count"/>
    <property value="Value" key="identify/format"/>
    <rasterrenderer band="1" type="singlebandpseudocolor" classificationMax="35" opacity="1" alphaBand="-1" classificationMin="-20">
        <colorrampshader classificationMode="1" colorRampType="DISCRETE" clip="1">
          <colorramp type="gradient" name="[source]">
            <prop k="color1" v="43,131,186,255"/>
            <prop k="color2" v="215,25,28,255"/>
            <prop k="discrete" v="0"/>
            <prop k="rampType" v="gradient"/>
            <prop k="stops" v="0.121394;105,175,176,255:0.185096;138,198,170,255:0.25;171,221,164,255:0.319712;195,231,172,255:0.373798;213,238,178,255:0.438702;235,247,185,255:0.5;255,255,191,255:0.574519;255,231,163,255:0.637019;254,211,140,255:0.69351;254,193,118,255:0.75;253,174,97,255:0.8125;244,137,80,255:0.873798;235,100,63,255:0.91226;229,77,52,255:0.953125;223,53,41,255"/>
          <item label="&lt;= -20" alpha="255" value="-20" color="#2b83ba"/>
          <item label="-20 → -10" alpha="255" value="-10" color="#88c5aa"/>
          <item label="-10 → -7.5" alpha="255" value="-7.5" color="#a0d5a6"/>
          <item label="-7.5 → -5" alpha="255" value="-5" color="#b3e1a7"/>
          <item label="-5 → -2.5" alpha="255" value="-2.5" color="#c3e7ac"/>
          <item label="-2.5 → 0" alpha="255" value="0" color="#d2edb1"/>
          <item label="0 → 2.5" alpha="255" value="2.5" color="#e1f3b6"/>
          <item label="2.5 → 5" alpha="255" value="5" color="#f1fabb"/>
          <item label="5 → 7.5" alpha="255" value="7.5" color="#ffffbf"/>
          <item label="7.5 → 10" alpha="255" value="10" color="#fff1ae"/>
          <item label="10 → 12.5" alpha="255" value="12.5" color="#ffe29d"/>
          <item label="12.5 → 15" alpha="255" value="15" color="#ffd48c"/>
          <item label="15 → 17.5" alpha="255" value="17.5" color="#fecc79"/>
          <item label="17.5 → 20" alpha="255" value="20" color="#feb669"/>
          <item label="20 → 22.5" alpha="255" value="22.5" color="#f4864e"/>
          <item label="22.5 → 25" alpha="255" value="25" color="#ed6a42"/>
          <item label="25 → 27.5" alpha="255" value="27.5" color="#d7191c"/>
          <item label="> 27.5" alpha="255" value="35" color="#96187e"/>
    <brightnesscontrast brightness="0" contrast="0"/>
    <huesaturation saturation="0" grayscaleMode="0" colorizeBlue="128" colorizeStrength="100" colorizeGreen="128" colorizeRed="255" colorizeOn="0"/>
    <rasterresampler maxOversampling="2"/>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.