I have a shapefile containing population points for Vietnam, and I am aiming to perform a weighted sum analysis using a Digital Elevation Model. Basically, I'd like to combine elevation, population densities and slope to find the best areas for terraced cultivation. I have a full DEM for Vietnam, and population densities.

The ideal locations would be medium slope angles without high population densities. However I'm a bit stuck on what path to follow.

  • My question is: is there a way I can perform a slope analysis using the DEM, and combine slope with population data inside a weighted sum analysis to find suitable areas. I need a slope between 10° and 15. My issue is that I don't really see how I can weigh the slope.
    – Tim56
    Mar 21, 2019 at 10:43
  • Please use the edit button beneath your question to revise it with any requested clarifications. The question you wish to ask will be obvious when it has a question mark at the end.
    – PolyGeo
    Mar 21, 2019 at 12:12

1 Answer 1


Here's an outline of a basic method.

  1. Filter each of your layers based on your conditions.


    i. Create a slope raster from the DEM.

    ii. Use the Raster calculator to create a raster with values of 1 when slope is acceptable (between 10 and 15 degrees), and 0 when the slope is unacceptable.

    @rasterband * (@rasterband > 10 AND @rasterband < 15)


    i. Convert your subjective condition (high/low population density) to an objective range of numerical values. Define what an acceptable range of population density would be.

    ii. Create a raster with values of 1 when population density is acceptable , and 0 when the population density is unacceptable.


    i. Define a range of acceptable elevations.

    ii. Use the Raster calculator to create a raster with values of 1 when elevation is acceptable, and 0 when the elevation is unacceptable.

  2. Find the area where the filtered layers overlap.

    Use the r.series tool to sum the three rasters together.

The output is a raster with values between 0 and 3. Any cell with a value of 3 meets all 3 of your criteria.

Note that this method can be modified to create a more nuanced output. Instead of making rasters with only 0 or 1, you can use a range of values between 0 and 1, such that 0 means a cell doesn't meet conditions at all, and 1 means the cell has optimal conditions. It's up to you to decide what you define as "optimal" for each condition.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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