Où puis-je trouver un histogramme de la teneur de la surface de la Terre?

11

J'ai trouvé un histogramme de l'élévation de la surface de la Terre sur Wikipédia :

Histogramme d'élévation

Cependant, cela ne donne aucune information sur la répartition des notes. Par exemple, toute la surface pourrait être entièrement composée de petites collines et avoir une teneur élevée partout, ou la surface pourrait être entièrement composée de plateaux parfaits, mettant la pente moyenne à 0 °. Évidemment, ces deux scénarios sont faux, mais cela illustre comment ces informations ne peuvent pas être déterminées à partir de l'histogramme d'élévation seul. Est-ce que quelqu'un sait où je peux trouver un histogramme similaire pour le grade?

dlras2
la source
5
Contrairement à l'histogramme d'élévation, la pente (pente) dépend de la résolution à laquelle la pente est calculée. De quelle résolution avez-vous besoin? Avez-vous également besoin de pentes du fond de l'océan?
whuber
C'est un très bon point. Idéalement, je voudrais une résolution d'une seconde environ, avec un histogramme n'incluant pas le fond de l'océan (mais un autre pour le fond de l'océan serait bien aussi.) Pour le moment, cependant, je prendrai tout ce que je peux arriver à me conduire dans la bonne direction.
dlras2

Réponses:

6

Si vous pouvez vous procurer l'ensemble de données, il existe des outils Rpour le faire. J'ai Etopo1 en tant que GeoTIFF, je pense que c'est celui de glace / cellule d'ici même si je l'ai peut-être converti moi-même à partir du format binaire.

http://www.ngdc.noaa.gov/mgg/global/global.html

Lisez les données (éventuellement avec une résolution réduite), calculez la pente et tracez.

library(rgdal)
library(raster)

## orig dims, reduced 4-fold (choose divisor to suit your needs / system)
x <- readGDAL("Etopo1.tif", output.dim = c(10800, 21600)/4)

## convert to raster format for calculations
r <- raster(x)

g <- slopeAspect(r, out = "slope", unit = "degrees")

## plot histogram
hist(g)

Trame r raster

J'utilise readGDAL car je le connais mieux, mais vous pouvez vous en tenir à raster comme un wrapper autour des trucs rgdal pour gérer la réduction de la résolution et ainsi de suite, et ne pas nécessiter d'utilisation en mémoire.

g
class       : RasterLayer 
dimensions  : 2700, 5400, 14580000  (nrow, ncol, ncell)
resolution  : 0.06666667, 0.06666667  (x, y)
extent      : -180, 180, -90, 90  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0 
values      : in memory
min value   : 0 
max value   : 38.11677 

Voir ?histpour plus d'options de traçage.

mdsumner
la source
Générer le mien à partir des données référencées semble être la meilleure façon de procéder. N'ayant jamais travaillé avec aucun SIG auparavant - GeoTIFF, Etopo1 ou R (ce que Google a prouvé agréablement trivial) - il me faudra un certain temps pour comprendre, mais vous m'avez mis sur la bonne voie, je pense.
dlras2
1
Malheureusement, cette approche obtient les mauvaises pentes, car elle ne projette pas les données. Une autre complication est que l'obtention de pentes mondiales à une résolution raisonnable est un énorme effort. Les pentes calculées sur plus de quelques centaines de mètres auront tendance à être lissées vers le bas. (La grille illustrée a une résolution de 7 kilomètres !) La couverture de la surface terrestre avec des grilles de 100 m nécessite des milliers de grilles (chacune ayant besoin de sa propre projection pour une précision raisonnable) comprenant environ 36 milliards de cellules. La simple collecte de ces DEM représente beaucoup de travail ...
whuber