wrf-hydro shp文件制作

发布时间 2023-06-15 10:16:19作者: xiaofeifeixd

1. 制作流域shp文件

目的:根据Fulldom_hires.nc文件,制作流域的shp文件,由几个子流域组成
方法:需要用到arcgispro, python

1. wrfhydro-gis 工具里面有个Examine_Outputs_of_GIS_Preprocessor.py,该工具是用来检验制作的流域地形相关数据是否正确的,

python Examine_Outputs_of_GIS_Preprocessor.py -i ../../outputs/ctl.zip -o new

我们使用其生成的basn_msk.tiff文件,该文件中不在流域内的部分的值为-9999,每个字流域的值为1开始的整数,可以使用下列代码进行简单的可视化:

flnm = '/home/fengx20/project/hydro/test_ground/Hydro_Routing/outputs/ctl/Fulldom_hires.nc'
ds = xr.open_dataset(flnm)
dd = ds['basn_msk']
db = xr.where(dd==-9999, 0,dd)
db.plot()

2. 利用basn_msk.tiff文件制作矢量的shp

setp1: 格栅转面, 生成面数据


step2: 利用面数据生成shp


step3: 筛选流域的shp文件
右键shp数据>数据>导出要素>顾虑器>gridcode 不等于 -9999


step4: 保存shp文件备用
对每个子流域单独保存一个shp文件

step5: 只保留外边界
参考

step6: 面数据变为线数据
参考
数据管理工具>>要素>>面转线

2.制作河道径流shp文件

  1. 对streamorder.tif文件进行同第2步的处理
  2. 利用流域shp对河道shp进行裁剪
    参考arcgis裁剪多个shp文件_Arcmap入门
    分析工具>>提取分析>>裁剪

最终效果展示

The thin black lines show river channels with a Strahler stream order equal to or above 3.