关闭

ArcGIS教程:加权总和

标签: ArcGIS教程加权总和加权
497人阅读 评论(0) 收藏 举报
分类:

  摘要

  通过将栅格各自乘以指定的权重并合计在一起来叠加多个栅格。

  插图

  

  插图中,像元值与其权重因子相乘,两者所得结果相加创建输出栅格。以左上角像元为例。两个输入的值变为 (2.2 * 0.75) = 1.65 和 (3 * 0.25) = 0.75。1.5 与 0.75 的和为 2.4。

  用法

  · 将多个栅格数据一起添加的有效方法是输入多个栅格并将所有权重设置为 1。

  · 输入栅格可以是整型或浮点型。

  · 权重值可以是正的或负的小数值。并不限定该值必须是相对百分比或等于 1.0。

  · 权重将应用至输入栅格的指定字段。字段的类型可以是短整型或长整型,双精度型或浮点型。

  语法

  WeightedSum (in_rasters)

  代码实例

  WeightedSum 示例 1(Python 窗口)

  本示例通过将多个栅格数据合并到一起并应用适当的加权因子来创建适宜性栅格,用以为滑雪场地选址。

  import arcpy

  from arcpy import env

  from arcpy.sa import *

  env.workspace = "C:/sapyexamples/data"

  # Execute WeightedSum

  outWeightedSum = WeightedSum(WSTable([["snow", "VALUE", 0.25], ["land", "VALUE",0.25],

  ["soil", "VALUE", 0.5]]))

  outWeightedSum.save("C:/sapyexamples/output/outwsum")

  WeightedSum 示例 2(独立脚本)

  本示例通过将多个栅格数据合并到一起并应用适当的加权因子来创建适宜性栅格,用以为滑雪场地选址。

  # Name: WeightedSum_Ex_02.py

  # Description: Overlays several rasters multiplying each by their given

  # weight and summing them together.

  # Requirements: Spatial Analyst Extension

  # Import system modules

  import arcpy

  from arcpy import env

  from arcpy.sa import *

  # Set environment settings

  env.workspace = "C:/sapyexamples/data"

  # Set local variables

  inRaster1 = "snow"

  inRaster2 = "land"

  inRaster3 = "soil"

  WSumTableObj = WSTable([[inRaster1, "VALUE", 0.25], [inRaster2, "VALUE", 0.25],

  [inRaster3, "VALUE", 0.5]])

  # Check out the ArcGIS Spatial Analyst extension license

  arcpy.CheckOutExtension("Spatial")

  # Execute WeightedSum

  outWeightedSum = WeightedSum(WSumTableObj)

  # Save the output

  outWeightedSum.save("C:/sapyexamples/output/weightsumout")

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:428503次
    • 积分:8500
    • 等级:
    • 排名:第2265名
    • 原创:393篇
    • 转载:248篇
    • 译文:0篇
    • 评论:15条
    最新评论