Graphab软件包括图谱创建、基于图谱的连通性计算、分析与推广、制图四个模块。Graphab软件的图谱创建基于栅格数据进行,包括斑块识别和连接建立两个步骤。Graphab 软件可识别的栅格数据格式包括TIFF、ASCI和RST,栅格像元记录数值用于识别斑块类型,识别规则可以选择四邻域或八邻域规则。斑块识别后,需要建立斑块之间的连接,斑块连接可以选择欧几里得距离或最小成本路径距离,其中最小成本路径距离可以基于景观类型赋值或由外部栅格数据计算得来。Graphab软件的连通性计算涵盖了全局(Global)、组分(Component)、场地(Local)三个尺度,此外还包括增量模式(Delta),增量模式通过节点或连接移除的方法来分析连接指数的相对变化,Graphab中常用的连通性指数具体介绍见 尹海伟著《城市与区域规划空间分析实验教程》第2.2.2章节。
1. 新建项目 (已默认准备好 源地 和 阻力面,皆为tif格式)
File --New project --指定项目保存路径(path)--next
2. 添加源地数据,定义连接规则
Landscape map :这里添加 源地的栅格形式(例如 tif格式)(必须为整型,否则报错:Error while loading image file,lmage data type is not integer type)
Habitat patch codes : 这里指定那些编号是源地。如果在矢量中源地编号是1-100,那么0,128或者256就不是源地,而是栅格背景值,不能指定为源地。
Patch connexity : 选择四邻域或八领域,八领域 可以让生成的廊道走 栅格格网的斜对角,而四领域就只有上下左右垂直或水平方向。
No data : 指定空值。也就是背景值。一般是0或者最大值。
Minimum patch area: 指定源地的最小面积,小于这么面积就不分析与之相连的廊道。
merge patches of different codes : 合并那些相邻(挨着)的源地为一个源地
3. 设置阻力面:
Name : 链接的命名
Topology : 拓扑规则:选择 平面(planar)或者 complete (球面),指定最大距离 Dist max
Ignore links crossing patch :允许廊道(线)重叠相交
Distance : ① Euclidean 欧式距离
② Cost from landscape map 阻力值从景观图上来。比如只有阻力面(值为1-100),那指定1为源地,1-100就可以用于阻力值。 Load cost: 载入阻力值对照表
③ Cost from raster file : 单独的阻力面文件
4. 点击finish 就开始运行了:(注意界面右下角的进度条)
5. 廊道结果。开启 Link sets -- Linkset1 就可以看到廊道结果了。
此过程可能的报错:
1. An error has occurred :java.lang.RuntimeException: java.lang.llegalArgumentException: Raster extent does not match.
原因:源地和栅格的行列数不一致。
2. An error has occurred : java.lang.lllegalArgumentException: No data to save
原因:这里不指定NoData, 就可以
。
3. An error has occurred :java.lang.RuntimeException: java.lang .llegaltateException:Negative or null cost is forbidden.Check your cost.
原因: 有负数不行,有符号的栅格类型也不行