Доступно с лицензией Spatial Analyst.
Доступно с лицензией Image Analyst.
Сводка
Наложение нескольких растров с умножением каждого на присвоенный им вес и общим суммированием.
Более подробно о том, как работает инструмент Взвешенная сумма
Иллюстрация
Использование
Простой способ сложить несколько растров между собой – выбрать в качестве входных данных несколько растров и установить все веса, равными 1.
Входные растры могут быть целочисленными, или они могут быть представлены значениями с плавающей точкой.
Значения весов могут быть любым положительным или отрицательными десятичными значениями. Они не ограничены процентами, и их сумма не должна равняться 1.0.
Вес будет применен к заданному полю входного растра. Поле может быть любого типа, короткое или длинное целое, двойной точности или с плавающей точкой.
По умолчанию, этот инструмент использует преимущества многоядерных процессоров. Максимальное число ядер, которое может быть использовано,– четыре.
Чтобы инструмент использовал меньшее число ядер, измените параметр среды parallelProcessingFactor.
См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
WeightedSum(in_rasters)
Parameter | Объяснение | Тип данных |
in_rasters | Инструмент Взвешенная сумма выполняет наложение нескольких растров, умножая каждый растр на заданный для него вес и складывая растры между собой. Класс Overlay используется для определения таблицы. Объект WSTable используется для определения в Python списка входных растров и для их соответствующего взвешивания. Форма объекта:
| WSTable |
Значение отраженного сигнала
Name | Объяснение | Тип данных |
out_raster | Выходной взвешенный растр. Он будет иметь тип с плавающей точкой. | Raster |
Пример кода
В этом примере создается растр соответствия для расположения лыжного курорта путем комбинирования нескольких растров вместе и применения соответствующих факторов веса.
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")
В этом примере создается растр соответствия для расположения лыжного курорта путем комбинирования нескольких растров вместе и применения соответствующих факторов веса.
# 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]])
# Execute WeightedSum
outWeightedSum = WeightedSum(WSumTableObj)
# Save the output
outWeightedSum.save("C:/sapyexamples/output/weightsumout")
Environments
Информация о лицензиях
- Basic: Требуется Дополнительный модуль Spatial Analyst или Image Analyst
- Standard: Требуется Дополнительный модуль Spatial Analyst или Image Analyst
- Advanced: Требуется Дополнительный модуль Spatial Analyst или Image Analyst