Weighted Sum (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 "Weighted Sum"
Abbildung
![Abbildung: Weighted Sum Abbildung: Weighted Sum](009z/GUID-D7ABDBB3-B782-4BF9-89AC-4FACDE4FC6BD-web.gif)
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 ganzzahlig 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.
Syntax
Parameter | Erläuterung | Datentyp |
in_rasters in_weighted_sum_table |
Das Werkzeug Weighted Sum 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 "WSTable" hat folgendes Format:
| WSTable |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster |
Das Ausgabe-Raster für die Eignung. Es weist einen Gleitkommatyp auf. | Raster |
Codebeispiel
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")
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]]) # 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")