Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I would like to make a Hillshade-Model with multicolor "alà Imhof". That means, I dont want a "usual" gray hillshade, I would like to use grey-blue and grey-violett from different sun directions.

Any idea how I could do that with qgis? Are there any plugins?

share|improve this question

You're after elevation coloured, shaded relief? You could start by looking here:

It's simple to use but doesn't offer much in the way of fine control. The results won't look too much like Imhof I'm afraid :(

Hint: If your DEM is lat/lon then transform it to a projected CRS first.

share|improve this answer
I know that tool, but its not what im looking for. The result is too... "organic", its good for digital map production, but not for printed maps. But thanks! – MAP Apr 27 '12 at 11:18
I didn't realise it was you, MAP! For fine control you can use gdaldem hillshade and gdaldem color-relief which are now in QGIS (with other useful tools), under the Raster menu. gdaldem color-relief is really useful, you can set transparency for the colours as well. I expect you will have seen this:… hsv_merge works well. – nhopton Apr 27 '12 at 11:48
I almost forgot, gdaldem can also produce data-rasters for slope and aspect. These can be also be rendered using gdaldem color-relief, with a suitable colour ramp. In case you wanted to add a yellow slope layer to the mix, for example (as suggested by Imhof). – nhopton Apr 27 '12 at 12:42
Thanks a lot! A lot stuff to experimentate :) – MAP Apr 28 '12 at 7:43

I don't really use QGIS very often so I don't know how it would be done there, but in Whitebox GAT, you would simply create a custom palette using the Palette Manager (Tools menu) to then display your hillshade image with:

enter image description here

enter image description here

The palette above simply blends RGB(0, 50, 100) to RGB(255, 240, 170), although any desired custom palette is possible. Here is an example of a hillshade image using this palette:

enter image description here

Even more interesting, you can transparently overlay the DEM displayed in a light-blue-to-white palette:

enter image description here

This gives a nice sense of airiness within the valley bottoms as though they are filled with a thicker atmosphere. You can have a lot of fun with it. Here's an example with other data overlayed:

enter image description here

share|improve this answer
For more details on this approach, I created a blog on this topic here,… – WhiteboxDev Sep 16 '14 at 14:49

I had the same problem several years ago and then I made my own Imhof program using python and numeric. The trick is to select a range of altitudes and apply a linear color palette. At the end you must combine the different results. This is a fragment of my code (very simplified)


   abajos = nrange(dtm, 0,500)
   amedias = nrange(dtm, 499, 4000)
   amaximas = where (dtm > 4000, dtm, 0)


    abajos_i       = convert.num2img(abajosbin)
    abajos_ic      = ImageOps.colorize(abajos_i, (147, 160, 150),(215, 210, 188))

    amedias_i      = convert.num2img(amediasbin)
    amedias_ic     = ImageOps.colorize(amedias_i, (215, 210, 188), (206, 187, 173))

    amaximas_i     = convert.num2img(amaximasbin)
    amaximas_ic    = ImageOps.colorize(amaximas_i, (206, 187, 173), (255,255,255))

ImageOps is part of the python Image package.

Conversion from tiff (16b) to numeric was mad using pynumeric (I think, not remember very well).

The tuples like (147, 160, 150),(215, 210, 188) means from which color to what color I want my color ramp and those RGB reflects Imhof paleete.

The result is a DTM with a very detailed Imhof palette, far more than 256 colors.

If somebody wants to make a Imhof plugin I am very pleased to pass the code.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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