En la ilustración, los valores de celda se multiplican por su factor de peso y los resultados se suman para crear el ráster de salida. Por ejemplo, observe la celda superior izquierda. Los valores de las dos entradas son (2,2 * 0,75) = 1,65 y (3 * 0,25) = 0,75. La suma de 1,65 y 0,75 es 2,4.
Uso
Una forma útil de sumar varios rásteres es introducir rásteres múltiples y establecer todas las ponderaciones como iguales a 1.
Los rásteres de entrada pueden ser enteros o de punto flotante.
Los valores de ponderación pueden ser cualquier valor decimal positivo o negativo. No esta restringido a un porcentaje relativo ni es necesario que sea igual a 1,0.
La ponderación se aplicará al campo especificado para el ráster de entrada. Los campos pueden ser de tipo entero corto o largo, doble o flotante.
De forma predeterminada, esta herramienta utilizará procesadores multinúcleo si están disponibles. Se pueden utilizar cuatro núcleos como máximo.
La tabla de suma ponderada le permite aplicar distintas ponderaciones a rásteres de entrada individuales antes de que se sumen.
Ráster: ráster que se pondera.
Campo: campo del ráster que se utilizará para la ponderación.
Ponderación: valor de ponderación por el cual se multiplicará el ráster. Puede ser cualquier valor decimal positivo o negativo.
WSTable
Valor de retorno
Etiqueta
Explicación
Tipo de datos
Ráster de salida
El ráster ponderado de salida.
Será del tipo de punto flotante.
Raster
WeightedSum(in_rasters)
Nombre
Explicación
Tipo de datos
in_rasters
La herramienta Suma ponderada superpone varios rásteres al multiplicar cada uno por su ponderación y sumar los resultados.
Se utiliza una clase Overlay para definir la tabla. El objeto Overlay se utiliza para especificar una lista de Python de rásteres de entrada y ponderarlos en consecuencia.
El formato del objeto es:
WSTable(weightedSumTable)
WSTable
Valor de retorno
Nombre
Explicación
Tipo de datos
out_raster
El ráster ponderado de salida.
Será del tipo de punto flotante.
Raster
Muestra de código
Ejemplo 1 de WeightedSum (ventana de Python)
En este ejemplo se crea un ráster de adecuación para ubicar una estación de esquí combinando varios rásteres y aplicando factores de peso adecuados.
import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/data"
# Run WeightedSum
outWeightedSum = WeightedSum("snow VALUE 0.25;land VALUE 0.25;soil VALUE 0.5")
outWeightedSum.save("C:/output/outwsum")
Ejemplo 2 de WeightedSum (script independiente)
En este ejemplo se crea un ráster de adecuación para ubicar una estación de esquí combinando varios rásteres y aplicando factores de peso adecuados.
# Name: WeightedSum_Ex_02.py
# Description: Overlays several rasters multiplying each by their given
# weight and summing them together.
# Import system modules
import arcpy
from arcpy import env
from arcpy.ia import *
# Set environment settings
env.workspace = "C:/iapyexamples/data"
wstable = "c:\\test\\Clip_dem.tif VALUE 50;c:\\test\\Clip_aspect.tif VALUE 50"
# Run WeightedSum
outWeightedSum = WeightedSum(wstable)
# Save the output
outWeightedSum.save("C:/iapyexamples/output/weightsumout")