【问题标题】:How to read .HGT files in R如何在 R 中读取 .HGT 文件
【发布时间】:2015-11-22 22:46:41
【问题描述】:

我正在尝试将存储在 .HGT 文件中的来自 NASA 的高程数据读取到 R 中。我检查了 rgdal 库,但显然它没有读取这种类型的文件。

ps。 Stack Overflow 社区在 PythonC++ 中展示了如何读取这种类型的文件,但我一直在寻找纯 R 解决方案。

.HGT 文件中有关地形数据的更多信息:

2014 年,NASA 航天飞机雷达地形任务 (SRTM) 生成的地形数据在全球发布。美国以外地区的 SRTM 数据分辨率为 1 角秒,或约 30 米(98 英尺)。您可以阅读更多信息here并下载数据here

目前,数据可用于世界以下地区:

这是来自 www2.jpl.nasa.gov/srtm/faq.html 的描述:

SRTM 数据文件的名称类似于“N34W119.hgt”。字母和数字分别代表什么,什么是“.hgt”格式?

每个数据文件覆盖地球表面一个纬度乘一度的块。前七个字符表示该块的西南角,其中 N、S、E 和 W 分别表示北、南、东和西。因此,“N34W119.hgt”文件涵盖北纬 34 到 35 度和西经 118-119(该文件包括加利福尼亚州洛杉矶市中心)。文件扩展名“.hgt”仅代表单词“height”,意思是海拔。它不是格式类型。这些文件采用“原始”格式(无标题且未压缩),16 位有符号整数,海拔以米为单位测量,采用“地理”(纬度和经度数组)投影,数据空白由 -32768 表示.国际 3 角秒文件有 1201 列和 1201 行数据,总文件大小为 2,884,802 字节 (= 1201 x 1201 x 2)。美国 1 角秒文件有 3601 列和 3601 行数据,总文件大小为 25,934,402 字节 (= 3601 x 3601 x 2)。欲了解更多信息,请阅读http://edcftp.cr.usgs.gov/pub/data/srtm/Readme.html的文本文件“SRTM_Topo.txt”

【问题讨论】:

  • 我可以使用raster 包打开这些文件。
  • 这里也一样。 hgt <- raster("N38W112.hgt") ; image(hgt)

标签: r binary gis elevation topography


【解决方案1】:

答案很简单,使用raster 包(感谢@Pascal 和@hrbrmstr 的cmets)。 rgdal 包也必须安装。

# Load libraries
  library(raster)
  library(rgdal)

# read file
  elevation <- raster("S23W044.hgt") 
# view image
  image(elevation)

【讨论】:

    猜你喜欢
    • 2013-04-24
    • 1970-01-01
    • 2011-10-04
    • 2010-09-26
    • 2012-11-28
    • 2015-12-07
    • 2016-11-30
    • 2016-11-15
    • 2014-09-23
    相关资源
    最近更新 更多