This is maybe rather subjective as it concerns style, but I would like to have a few decent colour ramps for my DEM when it is layed over my hill-shading.

I have created the Swiss hillshade model as shown here, but I'm not too convinced that the colour scheme is good.

Do you have any examples or screenshots?

9 Answers 9


I have seen so many example of inappropriate colour palettes applied to digital elevation models that it's good to see that people are thinking about this. There are some really good answers here too, but here is my opinion. I doubt that there is a universally good palette but rather a group of palettes that are appropriate for rendering elevation under different terrain and under different landscape scales. Another factor to consider is if you are planning on hillshading the DEM as well. These are my favourites:

(1) This is your standard elevation palette and is a good choice for a wide range of terrain and scales:

enter image description here

(2) When you're dealing with a slightly more mountainous terrain, you might want to have the palette start with deeper greens and end with whites. This is best if you plan on displaying a hillshade image transparently since otherwise the white may be interpreted as background.

enter image description here

(3) The following is a common palette used in atlases and I find it most appropriate for rendering smaller scales (i.e. large geographical regions).

enter image description here

(4) This palette progression is useful when you have subdued topography or when you have a lot of overlayed information and want the topography to fall into the background. It's also best when there is a hillshade image used as well.

enter image description here

(5) Finally, the following spectrum colour palette is useful when you don't want to use the typical green for valley bottom, brown for mountains relief. This may be either because you are dealing with a very large scale (e.g. a fine resolution DEM of a small area where there isn't relief at the scale of mountains) or where the DEM isn't of elevation but rather some other attribute.

enter image description here

If you are displaying the DEM transparently over a hillshade image (or vice versa) then an equally important consideration to the palette is the level of transparency. Compare the image above to the follow, both of which use the exact same palette:

enter image description here

How vibrant the colours should be compared to the hillshade tinting probably depends on the application (i.e. purpose of the map) and the other information that is overlayed.

You'll notice that I didn't include a greyscale image above. Here's the reason that I prefer not to render DEMs in greyscale: 1) you can't create a composite relief model (i.e. a DEM and hillshade image, as above) and 2) with all of the palettes used above people will automatically interpret them as being elevation whereas with a greyscale image, I know my immediate reaction is to interpret it as a satellite image or air photo...it takes me a moment to realize that it is in fact elevation. So unless it's an application where the map is going to be printed out (i.e. the editor has told me the figure must be greyscale) then I won't use a greyscale palette. And usually in the cases when it has to be greyscale, I'd rather use a hillshade image to convey the topography than DEM (if I have to choose one, I'll choose the hillshade).


I usually come at this question from the angle of "what is going to enhance, and not obscure, my data?".

Tufte talks about the some of the uses of colours in maps: to label, to measure, to represent, and to enliven. Choosing DEM colours is usually mostly for the latter (enlivening) - to make them look nice. For example, the default 'atlas coloring' of many maps I see is really pretty (and used in the Swiss hillshade example) - it's derived from something that seems 'natural': white (snow) at the high elevations, green (forests) on the lower slopes, yellow / brown (the plains) and blue (the sea). It looks beautiful, combined with a hillshade.

However, if you apply it everywhere, you end up with map colours that are not representative - they don't reflect reality, and (worse) can be completely misleading. A Luangwa Valley map I produced once made it look like the Alps when in fact it's a deep, hot valley bounded on one side by a cool-ish escarpment (no snow, no large bodies of water anywhere).

Plus, all those colours tend not to photocopy very well, and many offices don't have colour printers where I work, so the colours all disappear or end up becoming just patches of black.

Colorbrewer is great for investigating some of the sequential colour schemes you could use on your maps. You can select 'photocopyable' and other options - but it's kind of depressing how few colours remain as you select more restrictions.

The other problem (measurement) with colour ramps is that the eye interprets divisions between shades where they don't exist – grayscale is far, far better at showing varying quantities (nice essay on this at the visual.ly blog.

So ... I almost always end up using either:

  • Grayscale hillshading, or
  • A two-colour scheme that represents the ecology or habitat of the area - often from dry (yellow or red) to wet (green).

Expanding on one of themes in Simbamangu's very good answer: the basic problem with elevation shading using any colours at all other than neutral greys is the inescapable tendency for us to interpret meaning from the colours. For example a common rendering technique is to use deep greens for the valley bottoms, progressively lighten as one travels upslope, moving through browns and creams, to arrive finally on whites or pale blue/purple at the mountain peaks. (The technique is called hyspometric or elevation tinting.)

standard hypsometric tinting

This is very effective for conveying the shape of the terrain, lows are low and highs are high without needing to resort to interpreting contour lines. However this particular valley bottom, drawn in lush greens, may in fact be an arid-semi desert and that bare looking mountain slope at high elevation may in reality be a cloud rain forest.

The solution to counteract the tendency to misinterpret the colour values is to use a technique called Cross-blended Hypsometric Tints, excellently described by the redoubtable Tom Patterson. In cross-blended hyspometry the grey scale shaded relief provides the shade light- and dark-ness while another layer, such as classified vegetation cover, is used to provide colour values. The result is something where green really does mean vegetated and brown is rocky or barren and white is snow & ice covered, and light or dark conveys relative elevation.

Continental US in cross-blended hysp tints

So, in projects where there isn't the time or resources for cross-blending, just use grey scale.


So, I use swiss hillshade for most of the maps I use (here's a screenshot from California's Central Sierra) and tend to use a red/beige-grey theme that loosely follows the philosophy that Simbamangu described of not being too in your face (ie, it's not super colorful and in some spots is even a little drab, but the information is conveyed and I can layer much more on top of it). I want the heights - at center - to pop and the flat/lowlands - at left - to fade back.

My hillshade in production

This version is a flattened GeoTiff, but the color values (all r,g,b) I use are:

  • Aerial Perspective (from this Esri toolbox): low values, white; high values, 79,79,79
  • Filtered Hillshade: low values, white; high values, 84,84,84 - layer at 35% transparency
  • DEM: low values, 255, 252,252; high values 242,220,208 - layer at 25% transparency

Legend showing range and stacking

I hope that helps show one approach. Good luck finding one that works for your map


In addition to what has been mentioned, there are a few more things to consider. You can enhance the 3-dimensional impression of the map by not only varying the color hue but also the saturation, brightness, and vibrance. Saturated colors will appear closer and are suitable for mountain tops, while the lowlands and valleys can be colored rather unsaturated or dull. Famous Swiss cartographer Eduard Imhof has used these contrasts in his color ramps:

Hill-shading combined with hypsometric colors Plate 6 from the book: Eduard Imhof, Cartographic Relief Presentation, Berlin and New York 1982. Sheet format 26 x 17 cm; source: library.ethz.ch:

Hill-shading combined with hypsometric colors Plate 6 from the book: Eduard Imhof, Cartographic Relief Presentation, Berlin and New York 1982. Sheet format 26 x 17 cm; source: library.ethz.ch

He also suggests not to use equidistant color ramps but rather use geometric steps like 0, 200, 500, 1000, 2000, 4000m etc. But it always depends on the area you want to map. I've seen examples where one has mapped a full hypsometric color ramp to countries with little topography such as the Netherlands with bizarre results. Best is to know the geography of your area and what characteristic of the topography you want to communicate in the map.

Example: I want to do a hypsometric coloring of a map of Germany. The 200m mark is here as it is often the case a good mark to visually separate the low lands from the more mountainous areas (one could make a transition from greenish to yellowish colors here). The mountains of Germany can be separated in two distinct geographic types. 1) the low land mountains that are characteristic for many areas in central Germany and 2) the Alps in the far south. 1) has all the highest peaks just below 1500m while the German Alps rise above 2900m. Making a limit in the color ramp at 1500 visually separates these two topographic areas. See how in first example the Alps are more distinct from the rest (probably not so easy to see in this small scale). In the second example they don't come out so well from the color aspect (the shading helps here) but some ridges in the low land mountains are more accentuated. There is no clear right or wrong. You just need to know what you want.

A colored relief of Germany created by myself:

A colored relief of Germany created by myself

Example from Wikipedia by user Botaurus-stellaris:

example from Wikipedia by user Botaurus-stellaris


I'm sure many people already know this, but I stumbled across an excellent source of many colour ramps for QGIS (svg format). I am using QGIS 2.4 for this.

  1. Install the plugin SVG2ColR
  2. Browse to this site: SVG Ramp

  3. Download the colour ramp you like

  4. Load the SVG colour ramp and Export as Style
  5. Settings -> Style Manager-> Color Ramp -> Share -> Import

Now you have an amazing array of color ramps. There are lots of great elevation ramps at the site I listed above. Thanks to the site owners for the excellent work!


I think choosing a good color ramp depends on your purpose and geographic location. You can start with some examples at MappingCenter blog from ESRI


What I wanted was RGB or CMYk values of a colour ramp. Found them in the appendix of this article: The Development and Rationale of Cross-blended Hypsometric Tints https://doi.org/10.14714/CP69.20


I really like the color palettes that are perceptually uniform, and colorblind-friendly from cmocean and Scientific colour-maps:

1. Beautiful colormaps for oceanography: cmocean

Paper: Thyng, K. M., Greene, C. A., Hetland, R. D., Zimmerle, H. M., & DiMarco, S. F. (2016). True colors of oceanography. Oceanography, 29(3), 10, http://dx.doi.org/10.5670/oceanog.2016.66.

Talk: PLOTCON 2016: Kristen Thyng, Custom Colormaps for Your Field.

Bathymetry and topography, by Chad Greene.

Bathymetry plot, by Iury Sousa

2. Scientific colormaps

Paper: Crameri, F. (2018), Geodynamic diagnostics, scientific visualisation and StagLab 3.0, Geosci. Model Dev., 11, 2541-2562, doi:10.5194/gmd-11-2541-2018

Blog: The Rainbow Colour Map (repeatedly) considered harmful

Straume et al. (2019), GlobSed: Updated total sediment thickness in the world's oceans, G-cubed, doi:10.1029/2018GC008115

Thieulot (2018), GHOST: Geoscientific Hollow Sphere Tessellation, Solid Earth, doi:10.5194/se-9-1169-2018

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