Gewichtete Summe (Spatial Analyst)

Zusammenfassung

Überlagert mehrere Raster, wobei jedes mit der jeweiligen Gewichtung multipliziert und anschließend die Summe gebildet wird.

Weitere Informationen zur Funktionsweise des Werkzeugs "Gewichtete Summe"

Abbildung

Abbildung: Gewichtete Summe
In der Abbildung werden die Zellenwerte mit ihrem Gewichtungsfaktor multipliziert, und die Ergebnisse werden addiert, um das Ausgabe-Raster zu erstellen. Betrachten Sie beispielsweise die obere linke Zelle. Als Werte für die beiden Eingaben ergibt sich: (2,2 * 0,75) = 1,65 und (3 * 0,25) = 0,75. Die Summe von 1,65 und 0,75 beträgt 2,4.

Verwendung

  • Eine nützliche Möglichkeit, mehrere Raster hinzuzufügen, besteht darin, mehrere Raster einzugeben und alle Gewichtungen auf 1 festzulegen.

  • Eingabe-Raster können ganzzahlige oder Gleitkomma-Raster sein.

  • Als Gewichtungswerte kommen alle positiven oder negativen Dezimalwerte in Frage. Es besteht keine Einschränkung auf einen relativen Prozentsatz oder einen Wert gleich 1,0.

  • Die Gewichtung wird auf das angegebene Feld für das Eingabe-Raster angewendet. Felder können den Typ "Short Integer", "Long Integer", "Double" oder "Float" aufweisen.

  • Dieses Werkzeug verwendet standardmäßig Mehrkernprozessoren, wenn diese verfügbar sind. Es können maximal vier Kerne verwendet werden.

    Wenn Sie weniger Kerne verwenden möchten, verwenden Sie die Umgebungseinstellung Faktor für parallele Verarbeitung.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Raster

Mit der Tabelle der gewichteten Summe können Sie unterschiedliche Gewichtungen auf einzelne Eingabe-Raster anwenden, bevor sie summiert werden.

  • Raster – Das zu gewichtende Raster.
  • Feld – Das Feld des für die Gewichtung zu verwendenden Rasters.
  • Gewichtung – Der Gewichtungswert, mit dem das Raster multipliziert werden soll. Alle positiven oder negativen Dezimalwerte kommen in Frage.
WSTable

Rückgabewert

BeschriftungErläuterungDatentyp
Ausgabe-Raster

Das gewichtete Ausgabe-Raster.

Es weist einen Gleitkommatyp auf.

Raster

WeightedSum(in_rasters)
NameErläuterungDatentyp
in_rasters

Das Werkzeug Gewichtete Summe dient zum Überlagern mehrerer Raster, wobei jedes mit der jeweiligen Gewichtung multipliziert und anschließend die Summe gebildet wird.

Eine Overlay-Klasse wird verwendet, um die Tabelle zu definieren. Das Objekt WSTable wird verwendet, um eine Python-Liste der Eingabe-Raster anzugeben und sie entsprechend zu gewichten.

Das Objekt hat folgendes Format:

  • WSTable(weightedSumTable)

WSTable

Rückgabewert

NameErläuterungDatentyp
out_raster

Das gewichtete Ausgabe-Raster.

Es weist einen Gleitkommatyp auf.

Raster

Codebeispiel

WeightedSum – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird ein Eignungs-Raster für die Suche nach einem Skigebiet erstellt, indem mehrere Raster kombiniert und geeignete Gewichtungsfaktoren angewendet werden.

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 – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird ein Eignungs-Raster für die Suche nach einem Skigebiet erstellt, indem mehrere Raster kombiniert und geeignete Gewichtungsfaktoren angewendet werden.

# 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")