准备用于分析的数据

在执行洪水分析之前,您需要确保在 ArcGIS Pro 工程中具有正确的环境设置和适合您需求的数据。 您将从两个栅格开始,将它们合并为一个栅格,填充栅格数据中的空白,将栅格裁剪到研究区域,然后将高程单位从米转换为厘米。

下载数据

首先,您将下载 ArcGIS Pro 工程包并熟悉在本课程中使用的数据。

  1. 下载 Model how land subsidence affects flooding ArcGIS Pro 工程。
  2. 单击下载的 .ppkx 文件以在 ArcGIS Pro 中将其打开。 如果出现提示,请登录 ArcGIS OnlineArcGIS Enterprise 帐户。
    注:

    如果您没有组织帐户,请参阅软件访问权限选项

    包中包含多个图层,它们显示在地图和内容窗格中。 这些图层表示研究区域、建筑物、高程和地面沉降。

    “内容”窗格中提供的图层

包含两个高程栅格图层。 一个表示西部的高程而另一个位于研究区域的东部。 您将在分析期间使用的工具需要单个高程图层,因此您将组合图层。

设置地理处理环境

在执行栅格分析之前,您将设置地理处理环境。 这些设置确定工具如何处理数据输出。 您将确保坐标系、处理范围、栅格像元大小、掩膜和捕捉栅格设置在分析期间保持一致。

  1. 在功能区上,单击分析选项卡。 在地理处理组中,单击环境

    地理处理环境

    随即显示环境窗口。

    首先,您将设置工程的输出坐标系。 坐标系用于在地球表面和相对位置上正确定位并显示数据。 由于此工程位于荷兰,您将使用 RD_New 坐标系。 荷兰的国家坐标系使用米作为线性单位。

  2. 输出坐标下,将输出坐标系设置为当前地图 [研究区域地图]

    “输出坐标系”参数

    您打开的地图已使用 RD_New 坐标系,因此此参数将影响地图设置。

    接下来,您将设置处理范围。 此参数在地图上定义一个矩形,您的所有分析都将在其中进行。 矩形范围之外的所有数据都将被忽略并移除。

  3. 处理范围下,将范围设置为 Study Area Mask

    “处理范围”参数

    接下来,您将设置像元大小。 此参数确定您创建的所有新栅格的分辨率或像元(或像素)大小。 提供的高程栅格的像元大小为 5 米,所有新栅格将符合此分辨率。 线性单位米由您之前设置的坐标系确定。

  4. 栅格分析下,对于像元大小,输入 5

    “像元大小”参数

    接下来,您将设置一个掩膜。 设置掩膜后,栅格分析工具仅考虑位于掩膜地理边界范围内的像元。

  5. 掩膜设置为研究区域掩膜栅格

    “掩膜”参数

    最后,您将设置捕捉栅格参数,此参数可确保来自不同栅格的像素正确对齐,以便执行分析。

  6. 捕捉栅格设置为研究区域掩膜栅格

    “捕捉栅格”参数

  7. 单击确定

    您的环境参数已设置;您已可以准备数据以进行分析。

创建栅格镶嵌

首先,您要将两个高程栅格图层组合至单个数据集。 由多个较小的栅格图层组成的栅格图层称为镶嵌。

要组合栅格,您将使用地理处理工具。

  1. 在功能区的命令搜索中,输入镶嵌至新栅格。 在搜索结果列表中,选择镶嵌至新栅格

    命令搜索中“镶嵌至新栅格”的搜索结果

    地理处理窗格随即出现,显示镶嵌至新栅格工具。 地理处理工具使用用户选择的输入进行配置,可用于处理和分析数据集。

    首先,您将选择要分析的输入栅格。 然后,您经选择要保存输出数据集的位置。

  2. 对于输入栅格,选择 Elevation Raster WestElevation Raster East

    设置“输入栅格”。

  3. 对于输出位置,单击浏览按钮。

    浏览按钮

    输出位置窗口随即出现。

  4. 工程下,单击数据库。 单击 model_how_land_subsidence_affects_flooding.gdb 地理数据库。

    您的工程的地理数据库

    此为工程的默认地理数据库。 您将在此处保存课程的所有数据。

  5. 单击确定
  6. 对于具有扩展名的栅格数据集名称,输入 elevation

    新的栅格数据集名称

    由于新栅格将存储在地理数据库中,所以不需要扩展名。

    栅格数据的空间参考参数自动设置为输入图层的空间参考,即 RD_New。 您无需更改此参数。

    接下来,您将设置像素类型参数。 此参数确定栅格中的像元可以包含的值范围。 此工具的输入栅格为 32 位浮点型栅格,因此,您要将输出栅格设置为与之匹配。 通过使输入和输出像素类型保持一致,可以防止处理过程中的像素值取整和数据丢失。

  7. 对于像素类型,选择 32 位浮点型

    将“像素类型”设置为“32 位浮点型”。

    无需设置像元大小参数。 此参数将默认设置为您之前在环境设置中配置的 5 米像元大小。

    接下来,您将选择波段数。 波段是栅格中特征的度量标准。 高程栅格仅有一个特征,即高度。 因此,仅应包含一个波段。

  8. 对于波段数,输入 1

    设置“波段数”。

    镶嵌运算符参数确定如何处理输入栅格之间叠加的像元。 您将设置参数以确定重叠像元的平均值,并在输出中使用该值。

  9. 对于镶嵌运算符,选择平均值

    设置“镶嵌运算符”。

  10. 单击运行

    一个名为 elevation 的图层将添加到地图和内容窗格。

    “内容”窗格中的新高程栅格

    您不再需要原始的东部和西部栅格图层,因此需将其移除。

  11. 内容窗格中,右键单击 Elevation Raster West 图层并选择移除

    “移除”选项

    栅格随即从地图移除。

  12. 从地图中移除 Elevation Raster East 图层。

    与原始栅格图层相比,elevation 栅格覆盖的区域较小。 这是您的处理范围环境设置的结果。 仅会保留原始高程栅格所覆盖区域的一部分。

  13. 快速访问工具栏上,单击保存

    “保存”按钮

填充数据中的空白

接下来,您将填充高程栅格中无数据的区域。 这些区域代表水体和建筑物覆盖区。 首先,您将调查空白所在的位置。

  1. 单击功能区上的地图选项卡。 在导航组中,单击书签,然后选择 Voids

    Voids 书签

  2. 内容窗格中,关闭 Study Area Buildings 图层。

    在书签位置,栅格中具有孔洞,可以通过它们看到下方底图。

    地图上的 Voids 书签

    这些间隙需要填充。 您将使用高程空填充栅格函数执行此操作。 只要数据集中存在间隙,该函数就会查看间隙周围的像元并计算值以填充间隙。

  3. 在功能区上,单击分析选项卡。 在栅格组中,单击栅格函数按钮。

    栅格函数按钮

    随即显示栅格函数窗格。

  4. 在搜索栏中,输入高程空填充。 在表面下,单击高程空填充

    “高程空填充”栅格函数

    高程空填充栅格函数随即打开。 与地理处理工具相似,栅格函数需要您设置参数。

  5. DEM 设置为 elevation。 验证短程 IDW 半径是否为 -1

    短程 IDW 半径参数时将用于空白填充的最大搜索半径。 与任何有效像素间的距离都大于此阈值的空白将保留为空白。 值为 -1 将禁用此参数。

    接下来,您将设置最大空白宽度参数,用于指定待填充空白的最大尺寸。 如果空白周围边界框的宽度或高度大于最大空白宽度值,将不填充空白。 值为 0 时函数将填充所有空白,无论其大小如何。

  6. 对于最大空白宽度,输入 0

    “高程空填充”属性

  7. 单击新建图层

    名为 Elevation Void Fill_elevation 的图层已添加到内容窗格和地图。 此图层不含任何间隙,可用于分析。

    已填充间隙的新高程栅格

    接下来,您将移除 elevation 图层,因为您不再需要此图层。 您将缩放回研究区域的完整范围。

  8. 内容窗格中,右键单击 elevation 图层并选择移除
  9. 右键单击 Study Area Mask 图层,然后选择缩放至图层

    “缩放至图层”选项

    地图显示工程的完整范围。

    缩放到研究区域

    您将查看 Study Area Mask 图层(红色)内部的区域,但 Elevation Void Fill_elevation 图层延伸出此边界。

裁剪栅格图层

由于高程栅格延伸过研究区域的边界,因此您需将高程栅格裁剪至 Study Area Mask 图层。 裁剪图层会移除指定范围之外的所有数据。

  1. 在功能区上的命令搜索中,输入裁剪栅格。 选择裁剪栅格
  2. 地理处理窗格中,对于输入栅格,选择 Elevation Void Fill_elevation

    “输入栅格”参数

  3. 对于输出范围,选择 Study Area Mask

    “输出范围”参数

  4. 选中使用输入要素裁剪几何

    “使用输入要素裁剪几何”参数

  5. 对于输出栅格数据集,输入 elevation_clipped

    “输出栅格数据集”参数

  6. 单击运行

    限制于研究区域的栅格图层随即添加到地图和内容窗格。

  7. 从地图中移除 Elevation Void Fill_elevation 图层。

    随即显示 elevation_clipped 栅格,并将裁剪至 Study Area Mask 图层。

    高程栅格已裁剪至研究区域

  8. 保存工程。

转换测量单位

当前,您的高程栅格以米为单位测量高度。 由于地面沉降往往发生得很慢,所以通常以厘米为单位进行测量。 为了更好地比较洪水随时间的变化,您将把高程栅格的测量单位从米转换为厘米。 您将使用栅格计算器工具执行此转换计算。 此地理处理工具将基于您创建的表达式针对栅格中的每个像素执行计算。 您要将每个像素值乘以 100 以将值单位从米转换为厘米。

  1. 在功能区的命令搜索中,输入栅格计算器。 选择栅格计算器
  2. 地理处理窗格的栅格下,双击 elevation_clipped

    elevation_clipped 图层出现在表达式框内的双引号中。

    elevation_clipped 图层已添加到表达式。

    接下来,您要将栅格乘以 100,因为 1 米等于 100 厘米。

  3. 工具下,双击数学运算符。

    乘法运算符

    乘法运算符出现在表达式中的 elevation_clipped 后。

  4. 在表达式中,单击乘法运算符并输入 100

    完整的表达式

    您完成的表达式为 "elevation_clipped" *100

  5. 对于输出栅格,输入 elevation_cm。 单击运行

    输出栅格图层随即添加到地图和内容窗格。

    高程值中的差异

    由于您的计算,输出栅格值乘以了系数 100。

  6. 移除 elevation_clipped 图层。

    要使数据更加清晰,您将重命名 elevation_cm 图层以表示此为当今高程。

  7. 单击 elevation_cm 图层的名称以将其高亮显示,然后按 F2。 输入 Elevation Today (cm),然后按 Enter

    内容窗格中,更新图层名称。

    重命名的高程图层

  8. 保存工程。

您已准备了一个可用于确定地面沉降前洪水情况的高程栅格。 接下来,您将创建一个表示沉降的相似栅格。


对地面沉降进行建模

虽然沉降的原因有很多,但在荷兰,主要是由于薄弱土壤层的压实以及氧化造成的富含泥炭层的流失。 您的下一个目标是对当今年份到 2050 年之间研究区域内沉降导致的高程变化进行建模。

您已拥有表示当今高程的栅格。 根据此栅格,您将减去地面沉降的投影以计算 2050 年的高程。 接下来,您将查看高程的变化如何影响洪水。

重采样地面沉降数据

首先,您将确保所有栅格的像元大小相同。 当前高程栅格的分辨率为 5 米,而投影地面沉降图层的分辨率为 100 米。

将栅格图层从一种分辨率更改为另一种分辨率的过程称为重采样。 您将对 100 米分辨率的栅格进行重采样以获得 5 米的分辨率。

注:

将 100 米格网大小的栅格更改为 5 米格网大小的栅格是空间分辨率的重大变化。 您正在创建的 5 米地面沉降栅格应视为现实的近似值,而不是对实际局部地面沉降的精确描绘。 在进行您自己的研究时,建议您直接在外业收集更准确的地面沉降数据。

  1. 内容窗格中,关闭 Elevation Today (cm) 图层。 打开 Land Subsidence 图层。

    此图层时 2050 年地面沉降的投影。 栅格中每个像素的尺寸为 100 米,比高程栅格中的像素大得多。

    Land Subsidence 栅格图层

  2. 在功能区的命令搜索中,输入重采样。 选择重采样工具。
  3. 地理处理窗格中,对于输入栅格,选择 Land Subsidence

    要重采样的栅格数据集

  4. 对于输出栅格数据集,输入 land_subsidence_5m

    重采样的输出

    接下来,您将选择重采样技术。 重采样技术参数确定如何基于现有像素值及其相邻像素值计算重采样栅格的像素值。 您将选择双线性重采样技术,因为此技术最适合高程数据。

  5. 设置重采样技术。 选择双线性

    重采样技术

  6. 单击运行

    栅格图层随即添加到地图和内容窗格。 尽管此栅格与分辨率为 100 米的输入栅格相似,但是其分辨率为 5 米。 现在您拥有了分辨率更好的栅格,需要移除 Land Subsidence 图层。

  7. 内容窗格中,从地图中移除 Land Subsidence 图层。
  8. 浏览至 Project Boundary 书签。

    地面沉降栅格已经过重采样,但是栅格的某些部分位于研究区域之外,且其他部分不提供正确的覆盖范围。

    重采样数据与工程边界的比较

    接下来,您将着手解决此问题。

优化重采样数据

工程区域的某些部分未被地面沉降栅格覆盖。 栅格的其他部分超出了工程区域。 您将重新访问高程空填充栅格函数和裁剪栅格工具以解决此问题。

  1. 在功能区上的分析选项卡的栅格组中,单击栅格函数按钮。
  2. 栅格函数窗格中,如有必要,搜索高程空填充
  3. 单击高程空填充函数。 设置以下参数:

    • 对于 DEM,选择 land_subsidence_5m
    • 验证短程 IDW 半径是否设置为 -1
    • 对于最大空白宽度,输入 0

    填充地面沉降栅格中的空白。

  4. 单击新建图层

    地面沉降栅格图层随即加到地图和内容窗格中。

  5. 内容窗格中,移除 land_subsidence_5m 图层。
  6. 右键单击 Elevation Void Fill_land_subsidence_5m 图层,然后选择缩放至图层

    填充的栅格覆盖整个工程区域,但是在很多位置远超出区域范围。

    空白已被填充的地面沉降栅格

    接下来,您要将填充的栅格裁剪至工程范围。

  7. 在功能区的命令搜索中,输入裁剪栅格,然后选择裁剪栅格
  8. 地理处理窗格中,设置以下参数:

    • 对于输入栅格,选择 Elevation Void Fill_land_subsidence_5m
    • 对于输出范围,选择 Study Area Mask
    • 选中使用输入要素裁剪几何旁边的框。
    • 对于输出栅格数据集,输入 land_subsidence

    将地面沉降栅格裁剪至工程区域。

  9. 单击运行

    栅格图层随即添加到地图和内容窗格。

  10. 内容窗格中,移除 Elevation Void Fill_land_subsidence_5m 图层。

    您拥有了空间分辨率为 5 米且覆盖整个研究区域的土地沉降栅格。 此栅格以厘米为单位表示沉降值,因此无需额外的计算。

    地面沉降的最终栅格

  11. land_subsidence 图层重命名为 Land Subsidence
  12. 保存工程。

计算 2050 年的高程

您已了解当今年份的高程和 2050 年高程的投影变化。 使用这些数据集,您可以创建 2050 年的高程模型。 您将使用栅格计算器工具从当前高程减去沉降值。

  1. 在功能区上的命令搜索中,输入栅格计算器,然后选择栅格计算器
  2. 栅格下,双击 Elevation Today (cm)

    数据集随即添加到表达式。

    Elevation Today (cm) 图层已添加到表达式

  3. 工具下,双击减法运算符。
  4. 栅格下,双击 Land Subsidence

    最终表达式为:"Elevation Today (cm)" - "Land Subsidence"

    从当前高程减去地面沉降的公式

  5. 对于输出栅格,输入 elevation_2050
  6. 单击运行

    栅格图层随即添加到地图和内容窗格,显示研究区域 2050 年沉降影响下的投影高程。

    投影高程值

  7. 内容窗格中,将 elevation_2050 重命名为 Elevation 2050 (cm)。
  8. 打开 Elevation Today (cm) 图层并关闭 Study Area Mask 图层。

    接下来,您将打开弹出窗口并检查您在地图中所打开图层的数据。 要确保可以打开正确图层的弹出窗口,您将更改地图浏览方式的设置。

  9. 单击功能区上的地图选项卡。 在导航组中,单击浏览下拉菜单,然后选择可见图层

    设置“浏览”工具以返回“可见图层”。

  10. 单击工程区域内的任意位置。

    随即显示弹出窗口。

    注:

    您的值可能与示例图像不同,具体取决于单击位置。

    包含高程值的弹出窗口

    弹出窗口显示您打开的三个栅格的像素值。 如果您采用 Elevation Today (cm) 图层的值并减去 Land Subsidence 的值,则结果为 Elevation 2050 (cm) 的值。

  11. 关闭弹出窗口。
  12. 内容窗格中,关闭 Elevation 2050 (cm) 图层并移除 Land Subsidence 图层。
  13. 保存工程。

接下来,您将使用一系列地理处理工具通过这两个高程数据集确定遭受洪水侵袭的区域,以及洪水可能导致的预计损失。 您将从表示当前高程的数据集开始。


确定洪水造成的损失

由于荷兰地势低洼,洪水仍然令人担忧。 可以使用您之前创建的数据集估计洪水及其财务风险。 您将确定洪水泛滥的地区、程度以及所造成的损失。

计算洪水深度

首先,您将确定 Elevation Today (cm) 栅格的洪水深度。 具体来说,您将隔离 200 厘米或低于海平面以下的区域。 这些区域由于其高程较低,最容易受到洪水的影响。

  1. 在功能区上的命令搜索中,输入条件函数。 单击条件函数

    条件函数工具在地理处理窗格中打开。 基于您将要构建的表达式,此工具将查找满足特定条件的栅格中的所有像素,例如那些低点和最容易泛洪的像素。

  2. 对于输入条件栅格,选择 Elevation Today (cm)

    输入条件栅格

    接下来,您将构建一个表达式,用于确定哪些输入像元为真,哪些为假。 所有高程为 -200 厘米或更低的像元均被视为真。 所有其他像元均被视为假。 假像元将从数据集中移除,因为它们具有较高高程,不太可能发生洪水。

  3. 单击新建表达式。 构建表达式 Where VALUE is less than or equal to -200

    输入条件栅格

    接下来,您将设置输入条件为真时所取的栅格数据。 对于基于之前表达式确定为真的像元,此参数将决定像元值。 将返回高程值为 -200 厘米或更低的高程值。

  4. 对于输入条件为真时所取的栅格数据或常量值,选择 Elevation Today (cm)

    输入条件为真时所取的栅格数据

  5. 对于输出栅格,输入 flooded_area。 单击运行
  6. 内容窗格中,关闭 Elevation Today (cm) 图层,然后打开 Study Area Mask 图层。

    海拔最低的区域位于西部;这些区域更有可能发生洪水。 其高程范围在海平面以下 -200 至 -677 厘米之间。

    具有低洼高程的工程区域

    当前,尚不清楚此区域内的潜在洪水深度。 为了更好地可视化这一点,您将运行栅格计算以确定最大洪水深度。 此计算会将范围调整至从零开始,并将其反转以使深度值为正。

  7. 在功能区的命令搜索中,输入栅格计算器。 选择栅格计算器
  8. 对于表达式,输入 (
  9. 栅格下,双击 flooded_area
  10. 单击表达式的末尾,然后输入 +200)*-1

    用于计算洪水深度的表达式

    此计算将高程栅格转换为洪水深度栅格,该栅格将从零开始并具有正数值范围。 为了进行后续分析,栅格中的值必须是整数,没有小数位。 您要将转为整型工具添加到表达式。 此工具会将结果舍入为整型。

  11. 在表达式中,单击第一个括号之前的位置。 输入 Int(
  12. 在表达式的末尾,输入 )

    构建完成的表达式为:Int(( "flooded_area"+200)*-1)

    用于将洪水深度计算为整型的表达式

  13. 对于输出栅格,输入 flood_depth。 单击运行
  14. 内容窗格中,从地图中移除 flooded_area

    接下来,您要将洪水深度的配色方案更改为蓝色渐变,从而更好地进行可视化。

  15. flood_depth 图层下,右键单击符号,然后单击多部分配色方案下拉菜单。 选中显示名称,然后选择深海探测值 #3

    洪水深度地图符号系统

    更改配色方案时,菜单将关闭,但是您需将其再次打开以反向配色方案。

  16. 对于 flood_depth,右键单击符号然后单击反向配色方案按钮。
    注:

    在您单击菜单之外的某处以将其关闭之前,更改不会显示。

    反向配色方案。

    颜色随即在内容窗格和地图上更新。

    配色方案已反向

    洪水深度具有逻辑配色方案,其中较深的洪水为较深的蓝色。

  17. 保存工程。

定位洪水风险较高的区域内的建筑物

现在,确定了可能发生洪水的区域和水深后,您将找到这些危险区域内的建筑物。 但是,您的建筑物覆盖物图层不是栅格图层。 此图层为矢量图层,使用面而不是像素。 您要将洪水深度栅格转换为面矢量图层,从而更好地对比两个数据集。

  1. 在功能区上的命令搜索中,输入栅格转面。 单击栅格转面

    此工具会将栅格转为面。

  2. 对于输入栅格,选择 flood_depth
  3. 对于输出面要素,输入 flood_depth_polygons

    “栅格转面”工具参数

  4. 单击运行

    新的面图层随即添加到地图和内容窗格。 您将使用此图层找到哪些建筑物位于易受洪水侵袭的区域。 输出图层具有一个名为 gridcode 的字段。 对于每个面,属性包含洪水深度值。 稍后,您将在课程中使用此值。

  5. 内容窗格中,打开 Study Area Buildings 图层。 将其拖动到 flood_depth_polygons 图层上。

    Study Area Buildings 图层移动到绘制顺序的顶部。

    建筑物在地图上变为可见。

  6. 在功能区地图选项卡的选择组中,单击按位置选择

    “按位置选择”工具

    按位置选择将根据您设置的参数在一个图层中选择与另一个图层中的要素部分相交的要素。 您想要选择建筑物,因此将选择建筑物图层作为输入。

  7. 对于输入要素,验证已选择 Study Area Buildings

    按位置选择的“输入要素”参数

    特别地,您想要选择位于洪水深度面图层范围内的建筑物。

  8. 对于选择要素,选择 flood_depth_polygons

    按位置选择的“选择要素”参数

  9. 单击确定

    在地图中,所有与洪水区域相交的建筑物都将以浅蓝色轮廓选中。 在地图下方,将列出所选建筑物的总数。

    易受洪水侵袭区域中的建筑物

    在地图下方,将列出所选建筑物的总数。

    位于洪水区域内的建筑物数量

    有 643 个建筑物位于这些潜在洪水区域的范围内。 但是,此数字不会告诉您每栋建筑物的洪水深度。 遭受水位更高的洪水袭击的建筑物更易遭受更大的损失。

  10. 保存工程。

汇总洪水深度和损失

您了解了哪些建筑物具有洪水风险,您可以确定洪水深度和每栋建筑物的潜在损失成本。

  1. 在功能区上的命令搜索中,输入范围内汇总。 选择范围内汇总(分析工具)

    此工具会将面图层与其他图层叠加,以汇总面内相交要素的属性字段统计数据。 您要将建筑物与洪水面叠加,并将每栋建筑物的平均深度添加至新的建筑物图层。

  2. 对于输入面,选择 Study Area Buildings

    “输入面”参数

  3. 对于输入汇总要素,选择 flood_depth_polygons

    “输入汇总要素”参数

  4. 对于输出要素类,输入 Buildings_Flooded

    “输出要素类”参数

    接下来,您将设置参数,这些参数用于确定要针对每栋建筑物计算的统计数据。 将针对每栋建筑物计算格网代码或洪水深度的平均值。

  5. 汇总字段中,对于字段,选择 gridcode,在统计数据下,选择平均值

    “汇总字段”参数

  6. 取消选中保留所有输入面

    取消选中后,输出图层中仅包含所选建筑物。

    取消选中“保留所有输入面”

  7. 单击运行

    Buildings_Flooded 图层已添加到地图。

  8. 内容窗格中,关闭 Study Area Buildings 图层。

    仅显示最初选择的建筑物。

  9. 右键单击 Buildings_Flooded 图层,然后选择属性表

    “属性表”选项

    图层的属性表随即显示。 Mean gridcode 字段以厘米为单位显示每个建筑物要素的平均洪水深度。

    打开图层的属性表。

    基于调查(Stowa, 2019),可以根据洪水深度计算平均损失成本。 您将向表中添加另一个字段并运行计算来估计此成本。

    注:

    Stowa, 2019 中记录的调查是洪水损失计算的示例之一。 您需要确保所使用的模型能够最好地为您自己的工程预测损失。

  10. 在功能区上的命令搜索中,输入计算字段。 选择计算字段(数据管理工具)

    此工具可以添加一个字段,同时基于表达式计算字段。

  11. 对于输入表,选择 Buildings_Flooded

    “输入表”参数

  12. 对于字段名称(现有或新建),输入 DamageCosts

    “字段名称”参数

    接下来,您将选择字段类型。 字段类型决定新字段中允许什么类型的数值或文本。 双精度字段类型允许数值包含小数位。

  13. 对于字段类型,选择双精度型(64 位浮点型)

    “字段类型”参数

    接下来,您将选择表达式类型,这将确定表达式的代码语言。 您将使用 Arcade,这是一种专门针对 Esri 的代码语言,可以整合复杂的计算。

  14. 对于表达式类型,选择 Arcade

    “表达式类型”参数设置为 Arcade。

    接下来,您将创建表达式。 您要创建的是复杂的表达式,会因建筑物的洪水深度大于或小于一厘米而有所不同。 如果大于一厘米,您将使用来自 Stowa, 2019 的成本计算。 如果小于一厘米,您会将损失计算为零,因为对于较小的洪水深度,Stowa, 2019 计算的精度较低。

  15. 对于表达式,在 Damage Costs= 下,复制并粘贴以下代码:
    if ($feature.MEAN_gridcode > 1) {
         (0.298 * (Log(0.01 * $feature.MEAN_gridcode)) + 1.4502) * 271 * $feature.Shape_Area
    }
    else {
         0
    }

    用于计算洪水损失成本的表达式

  16. 单击确定

    名为 DamageCosts 的字段随即添加到属性表的右侧。 其中包含以欧元为单位的洪水损失估计成本。

    估计的损失成本

  17. 关闭属性表。

    关闭属性表。

    您将使用损失成本属性符号化 Buildings_Flooded 图层,使得具有较高成本的建筑物外观与具有较低成本的建筑物外观不同。

  18. 在功能区地图选项卡的选择组中,单击清除

    清除按钮

    所有已选要素不再为选中状态。

  19. 内容窗格中,右键单击 Buildings_Flooded 图层并选择符号系统

    “符号系统”选项

    随即显示符号系统窗格。

  20. 主符号系统下,选择分级色彩

    选择分级色彩符号系统。

  21. 对于字段,选择 DamageCosts

    选择属性以符号化图层。

  22. 对于配色方案,选中显示名称显示全部。 选择黄色到红色

    选择“黄色到红色”配色方案。

    地图上的建筑物要素反映洪水期间损失的估计成本。 红色对应于较高的成本而黄色对应于较低成本。

  23. 内容窗格中,移除 flood_depth_polygons

    地图显示在当前高程下容易遭受损失的建筑物。

    受洪水影像的建筑物叠加在工程区域地图上。

    现在您已经可视化了当前情况,然后将计算未来年份的潜在损失。

计算 2050 年的潜在损失

接下来,您将基于 2050 年的投影高程分析潜在损失。 此分析的步骤与您在分析当今高程时遵循的步骤类似。 但是,您不会逐个运行所有工具。 您将使用一个可以自动化分析的模型以节省时间。

GIS 用户通常会重复进行相同的分析,但每次只更改一个或两个变量。ModelBuilder 可在一个完整的进程中运行一系列工具。 之前所完成步骤的模型已通过您下载的工程为您提供。 接下来,您将确保输入图层和地图已经可以进行第二次分析。

  1. 内容窗格中,关闭 Buildings_Floodedflood_depth 图层。 打开 Study Area Buildings 图层。

    接下来,您将打开模型。 此模型保存在工程的默认工具箱中。

  2. 在功能区视图选项卡的窗口组中,单击目录窗格按钮。

    “目录窗格”按钮

    随即显示目录窗格。

  3. 展开工具箱。 展开 Model how land subsidence affects flooding.tbx

    展开的工具箱

  4. 右键单击洪水模型,然后单击编辑

    编辑模型以了解其中包含的工作流。

    模型将在其自己的视图中打开。

    模型将工具、数据输入和数据输出一起连接在一个序列中。 在模型中,蓝色椭圆为输入图层,黄色框为工具,绿色椭圆为输出图层。 模型分为五个部分,并使用了在分析当前高程数据集时已使用的工具。 您将确认所有输入均为正确,可以使模型正确运行。

    注:

    如果您看不到整个模型,可以调整模型视图。 在功能区上的 ModelBuilder 选项上的视图组中,单击适应窗口大小

  5. 在模型中的输入 DEM 组中,双击 2050 高程栅格元素。

    “2050 高程栅格”元素

    现在,Elevation 2050 (cm) 已设置为 2050 高程栅格

    “2050 高程栅格”参数

  6. 单击确定
  7. 选择淹没区域中的建筑物组中,右键单击研究区域建筑物元素。

    “研究区域建筑物”元素

    Study Area Buildings 图层已设置为模型中的建筑物图层。

    “研究区域建筑物”参数

  8. 单击确定

    接下来,您将探索用于洪水预测的栅格计算。

  9. 洪水深度计算组中,双击栅格计算器元素。

    “栅格计算器”元素

    此工具的参数已填写。

    参数已填写完成的“栅格计算器”工具

    在表达式中,flooded_area_2050 图层以百分比符号 (%) 包围。 这些符号表示直到工具运行时才会存在此图层,因为图层由模型中之前的工具创建。

  10. 单击确定

    模型随即可以运行。

  11. 在功能区 ModelBuilder 选项卡的运行组中,单击运行

    “运行”按钮

    模型中的工具运行时,黄色元素将依次变为红色。 工具运行完成时,工具和绿色输出数据集圆圈的后面会显示灰色阴影。 通过查看这些符号的变化,您可以追踪模型的进度。

    具有阴影的工具和图层已成功运行

    此模型需要几分钟才能完成。 完成后,洪水模型窗口显示完成

    “洪水模型”窗口

  12. 关闭洪水模型窗口,然后单击以保存更改。

    模型输出随即添加到地图和内容窗格。

    地图视图中的模型输出

    ModelBuilder 组已添加到您的地图,其中包含两个图层:Buildings_Flooded (2):Buildings_Flooded_2050flood_depth_2050:flood_depth_2050

    您将重命名这些图层以使用简化名称。

  13. 内容窗格中,重命名以下图层。

    • Buildings_Flooded (2):Buildings_Flooded_2050 重命名为 Buildings Flooded 2050
    • flood_depth_2050:flood_depth_2050 重命名为 Flood Depth 2050
    • Buildings_Flooded 重命名为 Buildings Flooded
    • flood_depth 重命名为 Flood Depth

  14. 关闭 Study Area MaskStudy Area BuildingsBuildings Flooded 2050
  15. 右键单击 ModelBuilder 组,然后单击取消分组

    “取消分组”选项

    ModelBuilder 中的两个图层不再分组。

  16. 清除所选内容并保存工程。

您已确定当今和 2050 年(经过预测的地面沉降后)的洪水泛滥区域以及损失的估计成本。 您还使用了模型来重复分析进程。 接下来,您将比较结果以查看地面沉降对于建筑物和财产的影响。


比较洪水情况

要了解潜在损失,您需要将当前年份的数据集与 2050 年的数据集进行比较。 您将检查洪水范围和损失的变化情况。

比较洪水深度

首先,您将查看现在到 2050 年之间洪水的范围如何变化。

  1. 内容窗格中,将 Flood Depth 图层移动到 Flood Depth 2050 下方。
  2. Flood Depth 2050 下,右键单击符号,然后单击连续配色方案下拉菜单。 选择深海探测值 #3,然后反向配色方案。

    2050 年的洪水深度图层使用了与当今的洪水深度图层相同的色带,但是它们的洪水深度值范围不同。 您将更改当今的洪水深度符号系统以匹配 2050 年预测深度的符号系统。

  3. 打开 Flood Depth 图层。 右键单击该图层,然后选择符号系统
  4. 符号系统窗格中,单击选项按钮,然后选择从图层导入

    “从图层导入”选项

    地理处理窗格中,应用图层的符号设置工具随即打开。

  5. 符号系统图层设置为 Flood Depth 2050

    应用图层的符号系统参数

  6. 单击运行

    Flood DepthFlood Depth 2050 图层具有可供比较的相同的符号系统。

    具有相同的符号系统的洪水图层

    要比较图层,您将使用卷帘工具。 您可通过此工具滑动地图以隐藏一个图层,从而显示其下方的图层。

  7. 内容窗格中,单击 Flood Depth 2050 图层以将其选中。
  8. 在功能区栅格图层选项卡的比较组中,单击卷帘

    卷帘工具

  9. 在地图上,拖动以显示 Flood Depth 2050 图层下方的 Flood Depth 图层。

    两个洪水深度图层的卷帘比较

    注:

    您可以垂直或水平滑动,具体取决于您的指针在屏幕上的放置位置。

    Flood Depth 2050 图层具有深蓝色,表示根据您之前执行的沉降栅格计算,洪水的深度更深。 相比如今,2050 年研究区域的更大一部分将发生洪水。

  10. 内容窗格中,关闭 Flood Depth 2050Flood Depth 图层。
  11. 在功能区的地图选项卡上,单击浏览工具以禁用卷帘。

比较来自洪水的估计损失

现在您已评估了可能发生洪水的区域及洪水深度,您将探索对建筑物造成的潜在损失。 与洪水深度相似,您将使用卷帘工具比较洪水造成的损失。 首先,您将更改 Buildings Flooded 2050 图层的符号系统,以便与 Buildings Flooded 图层相匹配,从而进行更准确的比较。

  1. 内容窗格中,将 Buildings Flooded 图层移动到 Buildings Flooded 2050 的下方。

    移动 Buildings Flooded 图层。

  2. 验证是否已打开 Buildings FloodedBuildings Flooded 2050 图层。
  3. 单击 Buildings Flooded 2050 以将其选中。
  4. 在功能区要素图层选项卡的绘图组中,单击导入

    “导入”按钮

    随即出现导入符号系统窗口。

  5. 对于符号系统图层,选择 Buildings Flooded

    “导入符号系统”窗口

  6. 单击确定

    两个图层使用相同的配色方案和值范围表示估计的洪水损失。

    两个建筑物图层使用相同的符号系统。

  7. 使用卷帘工具比较当今年份和 2050 年潜在洪水的估计损失。

    使用卷帘工具对建筑物损失的比较

    相比表示当今年份洪水的数据集,Buildings Flood 2050 图层中存在更多颜色较深的建筑物。 还有更多建筑物将在 2050 年被洪水侵袭,特别是在研究区的中部和东部。 这些结构中大多数都是较小的建筑物,因此遭受的损失较少。

    最后,您将计算并比较从当今年份到 2050 年的总损失成本。

  8. 内容窗格中,右键单击 Buildings Flooded 图层,然后选择属性表

    属性表的底部列出了此数据集中的要素数。

    数据集中的要素数

    有 643 栋建筑物至少部分位于易受洪水侵袭的区域内。 您要将这些建筑物中每个建筑物的损失成本相加或求和。

  9. 右键单击Damage Costs 字段标题并选择统计数据

    DamageCost 字段统计数据

    图表属性窗格和损失成本分布图表随即出现。 图表属性窗格显示每个建筑物的平均损失和所有损失的总和。

    损失成本字段的汇总统计数据

    您已估计损失成本总数超过 3.18 亿欧元,每栋建筑物的平均成本为 495,000 欧元。

  10. 关闭属性表和图表。
  11. 内容窗格中,右键单击 Buildings Flooded 2050 并选择属性表

    属性表显示有 3,860 个要素可能遭受洪水导致的损失。 另外 3,217 栋建筑物将在未来几十年内遭受损失。

  12. 右键单击 Damage Costs 字段标题,然后单击统计数据。 观察图表属性窗格。

    损失成本字段的汇总统计数据

    2050 年的总损失估计为 3.84 亿欧元。 每个建筑物的平均损失金额为 99,000 欧元。 更多的建筑物将遭受损失,但每个建筑物的损失成本更低。

  13. 关闭属性表和图表。
  14. 保存工程。

您已经在地图上直观地比较了损失金额,并通过运行统计数据进行了定量比较。 截至 2050 年,由于沉降而遭受洪水导致的损失的建筑物数量将会增加。 这会增加损失的总金额。 然而,建筑数量的增加主要涉及较小的建筑物。 对于这些较小的建筑物,每栋建筑物遭受的损失较少,因此降低了每个要素的平均损失金额。

在本课程中,为您提供了阿姆斯特丹附近区域的一些高程数据集。 您准备了数据以进行栅格分析,并计算了 2050 年的新高程数据集。 借助两个高程数据集,您可以比较同样的洪水事件在未来如何因地面沉降而造成更多的损失。 您以直观方式和使用汇总统计数据的方式观察了这些变化。

您可以在教程库中找到更多教程。