14.5. 分析工具

14.5.1. 栅格化和内插数据

可以通过多种方式完成向数据的网格转换。最简单的技术是将矢量几何图形(点、线或多边形)转换到栅格数据上, 必要时恢复属性值。另一种方法是通过统计运算符在规则网格上内插点数据(例如现场测量)。 以下部分中的数字的彩色版本,请参阅 seewww.iste.co.uk/baghdadi/qgis1.zip 。

QGIS处理步骤

  1. QGIS中气候数据的准备:

  • 仅打开以下文件:

    • postesSynop.json

    • synop.201611.csv

目标是将表 synop.201611.csv 的字段“t”(温度,单位为开尔文)附加到载体 postesSynop.json, 然后保留仅位于法国大都市的站点。

在“图层”面板中:

  • 右键单击“layer postesSynop”

  • 单击“属性”

在“Layer Properties”窗口中:

  • 单击选项卡“连接”

  • 单击按钮添加矢量连接

在“Add vector join”窗口中:

  • 设置如下:

    • 加入层: synop.201611

    • 联接字段: numer_sta

    • 目标字段: ID

    • 选中选项选择要联接的字段并选择字段“t”

在QGIS中:

  • 选择postesSynop层的站点,位于法国大都市(ID以“0”开头):

left("ID" , 1) = '0'
  • 将Lambert 93/RGF93中的选择另存为: fr_temperature.shp

由于“t”字段作为文本连接,因此应将其转换为小数值。

在QGIS中:

  • 创建一个名为“tempKelvin”的新字段,字段类型为十进制数(长度:10,精度:2),并复制“t”字段的值。

2016年11月的气象站和气温。

image7image8

2.车站栅格化

目标是对气象站进行栅格化。

在菜单栏中:

  • 单击 Raster > Conversion > Rasterize (Vector to Raster)…

在“Rasterize”窗口中:

  • 设置如下:

    • 输入文件 (shapefile): fr_temperature

    • 属性字段: tempKelvin

    • 栅格化矢量(栅格)的输出文件: fr_temp_rasterize.tif

    • 栅格大小(像素):

    • Width: 100,

    • Height: 100

  • 单击“OK”

3.站点 数据插值

_images/image33_xqa.jpeg

目标是对气象站记录的温度进行空间内插。

在菜单栏中:

  • 单击 Raster > Analysis > Grid (Interpolation)…

在“网格(插值)”窗口中:

  • 设置如下:

    • 输入文件: fr_temperature o Z field: tempKelvin

    • 输出文件: fr_temp_interpol.tif

    • 选中“调整大小”选项:

  • 宽度: 100,

  • 高度: 100

  • 单击“OK”

_images/image34_x7w.jpeg

4.结果分析

图像 fr_temp_rasterize.tif 和 fr_temp_interpol.tif 都是100 x 100像素的规则网格(图2.6)。 在第一个中,每个非零像素给出记录的温度和气象站位置。任何空像素都对应于缺乏信息。 在第二个中,所有像素都使用反距离加权填充。所以网格化不是插值!

_images/image35_xvj.jpeg

气象站栅格化(一点=一个站);

图2.6. a)b)

_images/image36_xzh.jpeg

站点记录的温度的空间插值

5.对应

GDAL 命令上面使用的工具相当于在终端中启动以下命令:

  • 对于栅格化:

gdal_rasterize -a tempKelvin -ts 100 100 -l france_temperature
france_temperature.shp fr_temp_rasterize.tif

其中:

  • [-a]:标识要用作烧录值的属性字段,

  • [-ts]: 以像素为单位设置输出文件大小,

  • [-l]: 表示要使用的矢量层。

有关更多信息,请参阅以下网页: http://www.gdal.org/gdal_rasterize.html

  • 对于插值:

gdal_grid -zfield tempKelvin -l france_temperature -outsize 100 100
-of GTiff fr_temperature.shp fr_temp_interpol.tif

其中:

  • [-zfield]: 标识用于计算插值的属性字段,

  • [-outsize]: 以像素为单位设置输出文件大小,

  • [-of]: 设置输出格式,

  • [-l]: 表示要使用的矢量层。

一些有用的选项:

  • [-a]: 设置插值算法

有关更多信息,请参阅以下网页: http://www.gdal.org/gdal_grid.html

表2.11.栅格化和插值