Mit der Spatial Analyst-Lizenz verfügbar.
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
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 nutzt standardmäßig Mehrkernprozessoren. Die maximale Anzahl der nutzbaren Kerne ist auf vier beschränkt.
Wenn das Werkzeug weniger Kerne nutzen soll, verwenden Sie die Umgebungseinstellung Faktor für parallele Verarbeitung.
Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.
Syntax
WeightedSum (in_rasters)
Parameter | Erläuterung | Datentyp |
in_rasters in_weighted_sum_table | 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 |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster | Das Ausgabe-Eignungs-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]])
# 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")
Umgebungen
Lizenzinformationen
- ArcGIS Desktop Basic: Erfordert Spatial Analyst
- ArcGIS Desktop Standard: Erfordert Spatial Analyst
- ArcGIS Desktop Advanced: Erfordert Spatial Analyst