地表の勾配のヒストグラムはどこで見つけることができますか?


11

ウィキペディアで地球の表面の標高のヒストグラムを見つけました:

標高ヒストグラム

ただし、これはグレードの分布に関する情報を提供しません。たとえば、表面全体を小さな丘で完全に作り、どこでも高い勾配を持たせたり、表面を完全な高原で構成して平均勾配を0°にしたりできます。明らかに、これらのシナリオは両方とも真実ではありませんが、標高ヒストグラムだけではこの情報を特定できないことを示しています。誰も私が等級の同様のヒストグラムを見つけることができる場所を知っていますか?


5
標高ヒストグラムとは異なり、勾配(勾配)は勾配が計算される解像度に依存します。どの解像度が必要ですか?海底の斜面も必要ですか?
whuber

それは非常に良い点です。理想的には、海底を含まないヒストグラムで1秒程度の解像度を望みます(ただし、海底用に別のヒストグラムもよいでしょう)。しかし、現時点では、できる限りのものを取ります正しい方向に私を導くようになります。
dlras2

回答:


6

データセットを取得できる場合は、Rこれを行うためのツールがあります。私はGeoTIFFとしてEtopo1を持っています。バイナリ形式から自分で変換したかもしれませんが、これはここからの氷/セルのものだと思います。

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

データを(おそらく解像度を下げて)読み取り、勾配とプロットを計算します。

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)

Rラスタープロット

私はreadGDALを使い慣れているので使用しますが、ラスタをrgdalの周りのラッパーとして使用して、解像度の低下などを処理し、メモリの使用を不要にすることができます。

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 

?histその他のプロットオプションを参照してください。


参照データから独自のデータを生成するのが最善の方法のようです。GeoTIFF、Etopo1、またはR(Googlingが非常に些細なことを証明した)でGISを使用したことがない場合、理解するのにしばらく時間がかかりますが、正しい方向に進んでくれたと思います。
dlras2

1
残念ながら、このアプローチはデータを投影しないため、間違った勾配を取得します。別の複雑な問題は、合理的な解像度で世界中の斜面を取得することは多大な努力であるということです。数百メートル以上にわたって計算された勾配は、下方向に滑らかになる傾向があります。(図解されたグリッドの解像度は7 キロメートルです!)地球の地表面を100mのグリッドで覆うには、約360億個のセルからなる数千のグリッド(それぞれが妥当な精度のために独自の投影を必要とします)が必要です。ただ、これらのDEMを収集することは...多くの仕事である
whuber
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.