SourceForge has been redesigned. Learn more.

#110 TA - Morphometry - Hypsometry (multiple bugs)

Modules (45)

When classification constant is defined as 'height':
1, module doesn't respect 'Sort' parameter.
2. Results in 'Module execution failed', but result looks okay (taking into account 1.)
The name 'Sort' itself is confusing. From what I understand it just depends how we look at hypsometric curve, but usually all area is above outlet, and no area higher than highest point.

When classification constant is defined as 'area', relative height goes only to ~50%.

Effective number of classes for 'height' is +1, whereas for 'area' classification I got only 1311 when requested 2651 (I wanted 2652 in fact).

I attach the snapshot with SAGA's hypsometry plot and that from ArcMap. To get hypsometric curve in ArcMap, I multiplied all values by 100 and converted them to integer. It allowed me to get a table with elevation and cell count that I used in MS Excel to produce plot. Elevation was divided by 100 in Excel, of course, and cumulative area was calculated from cell count.

P.S. I used 1m DEM in ArcMap and 3m DEM in SAGA, but it shouldn't result in such behavior.


  • Mikhail Titov

    Mikhail Titov - 2010-11-23

    MS Excel snapshot with results from ArcMap & SAGA

    • Jigme Tenzin

      Jigme Tenzin - 2014-02-09

      @ Mikhail, please help me by providing the detail procedures to create hypsometric curve from DEM in ArcGIS..Thanking you..

      • Mikhail Titov

        Mikhail Titov - 2014-02-10

        @Jigme This is not an ArcGIS support forum. I wrote what one can do for hyspsometric curve with ArcGIS. Only integer valued rasters have Raster Attribute Table that ArcGIS populates with value count that can be converted to an area using cell size.
        If you want an alternative open source solution, consider . Otherwise SAGA GIS will do the job just fine. I hope this was fixed a while ago although I did not check.

  • Volker Wichmann

    Volker Wichmann - 2010-11-25

    I've fixed the bug that the module returned 'Module execution failed' when method 'height' is used. The module just reported back false, the computational method itself is not affected.

    I have not read the references that were used to program this module, so I can't say much about the other issues.

    But I think that it is intended that the output returns the number of classes + 1. This way you get the complete range (0-100) in order to plot a complete diagram.

    Regarding the requested 2651 classes with method 'area' in your example - I think 1311 is the maximum number that can be computed in this case. The stepping used is calculated as
    nSteps = number of grid cells / number of classes
    and thus depends on the number of cells in your grid.

    I can't see any discrepancies between ArcGIS and SAGA in your screen shot, besides that the naming of the methods might be different and that you see more detail with SAGA.

    Hopefully we can clarify the remaining issues in order to close the bug,

  • Mikhail Titov

    Mikhail Titov - 2010-11-26

    Yeah... I had a feeling that it was just a glitch with return value.

    In my opinion references are a bit unrelated :-) I didn't read them thoroughly though, but they talk about statistical moments calculation as a kind of fingerprint instead of looking just at the shape. Module doesn't calculate any such integrals. At least I don't see them among results.

    I don't mind against +1 issue, though it would be nice to have a note about it.

    For method "area", I feel like I tried different values for classes, I end up with 50% relative height anyway. I'll double check that.

    Well.. for ArcMap result I can see that for 380 m elevation, I have 20 square miles area, while for SAGA I have it for 390 meters. Also I don't understand why shape is so different for relative units for "area" method (up-most right-most figure on the picture).

    And what about "Sort" parameter? It influences results for "area" method, but is ignored for "height" method.

  • Mikhail Titov

    Mikhail Titov - 2010-11-26

    I confirm that even for default 100 classes I get relative height up to 49% only with "area" classification and sort "down" and from 51% to 100% if sort is "up".

  • Volker Wichmann

    Volker Wichmann - 2014-04-21
    • status: open --> closed
  • Volker Wichmann

    Volker Wichmann - 2014-04-21

    I'm working through older bug reports and came across this one. I've just committed some changes to the module and did some test, seems like it is working now as expected.

    Hypsometry module: rework/add module and parameter descriptions, add parameter en/disable methods to reflect possible parameter configurations and add error messages in case of module execution failure; refers to bug #110



Cancel  Add attachments