How do I calculate the area between certain contour lines (e.g. 0-800, 800-1400, 1400-2100...) from a given shapefile. What I need is the area of the certain elevation levels.

  • shapefile is from vogis-data download (via FTP vogis.cvn.at - Gelaendemodell - Hoehenschichten - Vlbg), vector polylines, altitude is ranging from 200 - 3300 m, but not equidistances

  • lines to polygone seems not to work (too complex/large data?)

  • fieldcalculator $area did not (only lines?)
  • there is no DEM in raster format
  • 2
    How about you create a DEM from your contour lines? After that you could reclass your raster in the desired elevation levels, and then calculate the area (n_of_ pixes * pixel_size²) for each class. – Alexandre Neto May 6 '13 at 18:49
  • Thanks, but creating DEM did not work. Tried it via SEXTANTE but always got the error "could not load layer"... – user16032 May 8 '13 at 9:22
  • Try using Interpolation tool in Raster Menu. – Alexandre Neto May 8 '13 at 16:11
  • 2
    There is a good reason you have been frustrated, because this cannot be done without more information: please see the analysis at gis.stackexchange.com/questions/61550/…. – whuber Nov 8 '13 at 17:14
  • Typical problem that can be solved using topology. Import your contour lines as border lines into GRASS, generate centroids and build topology to get polygons. – Zoltan Oct 7 '15 at 6:10

What about building a bounding line in your contour dataset (a "box" that outlines and intersects your contour dataset).

Then selecting that line along with your demarcation elevation contours (i.e. 0, 800, 1400, 2100,...) and building a polygon feature from that.

Then calculate the areas of the resulting polygons (if those values aren't inherent in the polygon data already).

Incidentally the resulting polygons can be used, with or without transparency, to symbolize the elevation for visual interpretive uses.

  • Good try: but please see gis.stackexchange.com/questions/61550/… for why this can produce erroneous results. – whuber Nov 8 '13 at 17:15
  • @whubber - right, and both answers (mine and your link) don't account for actual area (acres or hectares) but assumes both that the terrain is smooth/level between the demarcation elevations. Secondly, since elevation is continuous and (presumably) the AOI isn't, there is no way to avoid the problem you highlight. Lastly, this problem isn't a problem for the question "user16032" asked. So my answer still stands, right? – user23715 Nov 8 '13 at 18:22
  • It depends on what "between" contour lines might mean: the natural interpretation is in terms of elevation rather than just the spaces on the map. Because the elevation in some cases cannot be determined, the question is not objectively answerable without additional information or assumptions (implying your solution may give incorrect results). Such information suffices to reconstruct (an approximation of) the original DEM, with which questions about the plan area, actual surface area, and other elevation-related aspects can be answered. – whuber Nov 8 '13 at 20:28
  • Well, I try not to read too much into the question. All your points on this page and on the other thread of yours you link to are, so far as I can tell, spot on. But that's a lot of work to answer a question not asked. And without feedback from "user16032" it's hard to argue he needs to put in the effort needed using your better method. – user23715 Nov 9 '13 at 2:59

If line to polygon does not work, try checking the topology and look for mistakes. Contour lines are not always closed, you could try closing them before you try the line to polygon.

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