I have my elevation data but cannot make an attribute table from it and so I'm not sure how to get any of that data into a table in order to make a hypsometric curve.
The raster is stored in floating point format as individual values in each cell; therefore it has no attribute table. An effective solution is to discretize the values and convert them to integer format. This creates an attribute table which, when plotted, will yield a histogram. Its cumulative sums are the hypsometric curve.
The appearance of the hypsometric curve (in CDF form) for this sample DEM (a portion of Illinois available at http://exampledata.wolfram.com/ArcGRID.zip) varies with the fineness of the value discretization. The following images use bins of 5, 1, and 1/5 meters, respectively. As you can see, one can obtain a precise curve using moderately coarse bins.
Discretizing a grid involves two operations which can be done in one step: divide by the bin width and truncate (or round, if you prefer). For example, elevations in meters can be discretized into 0.1 meter increments via division by 0.1 followed by truncation, as in
This syntax, or something quite close to it, would be used in almost any version of ArcGIS (and in many other raster GISes as well).
|show 1 more comment|
I normally use R for this. You can read GDAL raster data sets using
For example, I have my DEM in a GeoTIFF file, in R use: