¿Cómo obtener la curva hipsométrica de los datos de elevación?


8

Tengo mis datos de elevación, pero no puedo hacer una tabla de atributos a partir de ellos, por lo que no estoy seguro de cómo obtener esos datos en una tabla para hacer una curva hipsométrica.

Respuestas:


10

El ráster se almacena en formato de coma flotante como valores individuales en cada celda; por lo tanto no tiene tabla de atributos. Una solución efectiva es discretizar los valores y convertirlos a formato entero. Esto crea una tabla de atributos que, cuando se traza, generará un histograma. Sus sumas acumulativas son la curva hipsométrica.

DEM en relieve

La apariencia de la curva hipsométrica (en forma de CDF) para este DEM de muestra (una porción de Illinois disponible en http://exampledata.wolfram.com/ArcGRID.zip ) varía con la precisión de la discretización del valor. Las siguientes imágenes usan contenedores de 5, 1 y 1/5 metros, respectivamente. Como puede ver, se puede obtener una curva precisa utilizando contenedores moderadamente gruesos.

Curvas hipsométricas

Discretizar una cuadrícula implica dos operaciones que se pueden realizar en un solo paso: dividir por el ancho del contenedor y truncar (o redondear, si lo prefiere). Por ejemplo, las elevaciones en metros se pueden discretizar en incrementos de 0.1 metros a través de la división por 0.1 seguido de truncamiento, como en

Int( [elevation] / 0.1 )

Esta sintaxis, o algo parecido, se usaría en casi cualquier versión de ArcGIS (y también en muchos otros SIG ráster).


Si las elevaciones pueden ser tanto positivas como negativas, vea si su versión de ArcGIS admite una Floorfunción, porque algunas Intimplementaciones se truncan hacia 0 en lugar de hacia abajo, lo que duplicaría el ancho del contenedor que contiene 0 (un resultado no deseado).
whuber

1
@Kirk Esa es una buena idea, pero mi experiencia con el software ESRI y los cálculos estadísticos me lleva a desconfiar de él. ¿Dónde está la documentación detallada? Por ejemplo, ¿qué tipo de procedimiento de muestreo se usa exactamente? ¿Dónde está la evidencia de que obtiene el resultado correcto? Y si hay tal evidencia, digamos, a través de pruebas exhaustivas de usuarios y ingeniería inversa, tenemos que tirar todo y comenzar de nuevo con el próximo parche de software.
whuber

1
Bueno, iba a sugerirle enchufar su propia IBinFunction2 , pero veo que dice "Esta interfaz no está destinada a ser utilizada por desarrolladores externos". Oh bien.
Kirk Kuykendall

2
Yo haría eco a @whuber; Las estadísticas de ESRI son sospechosas. Nos hemos quejado al soporte técnico durante dos años porque sus percentiles / cuartiles se calculan incorrectamente y ni siquiera son consistentes dentro del software. Les hemos demostrado empíricamente que no son "exactos" ni "interpolados". Su respuesta es que están "muestreando los datos" pero no revelarán detalles.
Jeffrey Evans

1
@Jeffrey Me reuní con representantes de ESRI en 2006 y les presenté este tema (entre muchos otros). En ese momento había documentado tres cálculos diferentes de desviaciones estándar dentro de ArcGIS, de los cuales al menos uno era claramente un error. Me gusta y uso ArcGIS por sus puntos fuertes, pero debido a este tipo de comportamiento me veo obligado a concluir que el análisis estadístico, de cualquier tipo, no está entre ellos.
whuber

5

Normalmente uso R para esto. Puede leer conjuntos de datos ráster GDAL usando rgdal(de CRAN), luego construir una distribución empírica acumulativa para los valores de elevación usando ecdf(incorporado).

Por ejemplo, tengo mi DEM en un archivo GeoTIFF, en uso R:

library(rgdal)
topo <- readGDAL("mytoporaster.tif")
plot(ecdf(topo$band1), main="Hypsometric curve", xlab="Elevation (m)")

curva hipsométrica


+1 Buena solución. También puede analizar esa curva (ampliamente) en R.
whuber

1

curva hipsométrica

También vea el tutorial en Carleton .


Esta ilustración nos recuerda que hay (al menos) tres ideas diferentes de "curva hipsométrica". Según Wikipedia , es un CDF empírico de elevaciones. Según esta ilustración, es el CDF complementario . Y según otras referencias , es un histograma (PDF empírico).
whuber

0

Me encontré con este documento que habla de una extensión ArcGIS 9.x.

CalHypso: una extensión de ArcGIS para calcular curvas hipsométricas y sus momentos estadísticos. Aplicaciones al análisis de cuencas de drenaje en el sureste de España

La extensión con datos de muestra se proporciona en esta ubicación de descarga .

Para el registro, la extensión funciona en ArcGIS 10.4.1.


Eché un vistazo al código para ver qué tan bien podría funcionar. Me detuve tan pronto como llegué a la implementación de bubbleort, sin necesidad de seguir leyendo.
whuber
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.