R语言入门——读取栅格数据参数解读

Posted 统计学小王子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R语言入门——读取栅格数据参数解读相关的知识,希望对你有一定的参考价值。

读取栅格数据

引言

很多非地理专业的同学会在使用天气、地理、自然灾害、温度湿度等数据时遇到一种数据格式。.nc格式。也称为栅格数据,但是读入之后确读不明白他的数据结构。下面我以2019华为杯的数据为例,为大家分析一下这种数据的数据结构。非专业解读,仅供参考。

1、数据读入

# 载入包
> library(raster)
> library(ncdf4)
> library(rasterVis)
> library(lattice)
# 数据读取
r = stack("数据/data.nc")

2、参数解读

> r
class      : RasterStack 
dimensions : 89, 180, 16020, 1985  (nrow, ncol, ncell, nlayers)
resolution : 2, 2  (x, y)
extent     : -1, 359, -89, 89  (xmin, xmax, ymin, ymax)
crs        : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 
names      : X1854.01.01, X1854.02.01, X1854.03.01, X1854.04.01, X1854.05.01, X1854.06.01, X1854.07.01, X1854.08.01, X1854.09.01, X1854.10.01, X1854.11.01, X1854.12.01, X1855.01.01, X1855.02.01, X1855.03.01, ...

2.1 class (类)

数据的类型,栅格数据

2.2 dimensions(维度)

dimensions : 89, 180, 16020, 1985  (nrow, ncol, ncell, nlayers)

数据的维度,(行数,列数、行函数乘以列数、层数)。上述这个数据共有89行,180列,16020个数据,1985层。
每一层可以通过列表索引取出类似于矩阵格式的数据。当然取出的类还是栅格数据。下面的命令进行查看。

> Data <- r[[1]]  # 取出第一层
> class(Data)
[1] "RasterLayer"
attr(,"package")
[1] "raster"
> dim(Data)  # 第一层的维度
[1]  89 180   1

下面画一下第一层的效果图:

plot(Data)

2.3 resolution (像素)

数据的像素resolution :2, 2 (x, y),这个是数据的像素,决定x轴y轴的经纬度的间隔。这个数xy间隔都是2。下个参描说具体怎么用。

2.4 extent(范围)

这个的含义应该很明确,-1, 359, -89, 89 (xmin, xmax, ymin, ymax),x是从-1到359间隔为2,即:-1,1,3,5,…。

2.5 names

这个参数是每一层的名字,我猜想可以通过每一层的名字索引试试:

> Data2 <- r$X1854.01.01
> class(Data2)
[1] "RasterLayer"
attr(,"package")
[1] "raster"
> dim(Data2)

确认过眼神,确实可以。

2.6 band(波段)

这个数据没有这个参数,没有感性的认识,咱也不知道。有知道的大神欢迎评论区留言学习。

3、总结

希望对一些刚刚上手的人有用。总结不专业,有问题评论区见。谢谢支持了。

以上是关于R语言入门——读取栅格数据参数解读的主要内容,如果未能解决你的问题,请参考以下文章

栅格那点儿事(四B)---多波段栅格数据的显示

R语言快速上手入门

如何R语言快速上手入门

ArcGIS微课1000例0057:将多波段栅格(影像.tif)背景设置为无数据nodata的方法

ArcGIS微课1000例0057:将多波段栅格(影像.tif)背景设置为无数据nodata的方法

如何平均单个 PostGIS 栅格表中的所有波段?