Zusammenfassung
Fasst die Attribute eines Eingabe-Polygon-Layers basierend auf der räumlichen Überlagerung eines Ziel-Polygon-Layers zusammen und weist die zusammengefassten Attribute den Ziel-Polygonen zu. Die Ziel-Polygone weisen summierte numerische Attribute auf, die von den Eingabe-Polygonen abgeleitet werden, die jedes Ziel überlappt. Dieser Prozess wird allgemein als Aufteilen oder Aufteilung bezeichnet.
Dieses Werkzeug kann verwendet werden, um die Population eines Features basierend auf dem Prozentsatz, zu dem dieses Features ein anderes Feature mit einer bekannten Population überlagert, zu schätzen.
Abbildung
Verwendung
Standardmäßig legt der Prozentsatz des Überlappungsbereichs den Wert des Attributs fest. Ein Gewichtungsfeld kann zusammen mit dem Bereich verwendet werden, um den Anteil des Attributs festzulegen, der von jedem überlappenden Feature summiert wird.
Ein Gewichtungsfeld-Wert von 0 legt die Felder für das Aufteilen der Werte auf 0 für jedes überlappende Ziel-Feature fest.
Dieses Werkzeug berücksichtigt die Umgebung Faktor für parallele Verarbeitung. Wenn die Umgebungsvariable nicht (Standardeinstellung) oder auf 100 festgelegt ist, wird die vollständige parallele Verarbeitung aktiviert und das Werkzeug versucht, die Arbeit auf alle logischen Kerne auf dem Computer zu verteilen. Durch Festlegen der Umgebung auf 0 wird die parallele Verarbeitung deaktiviert. Wenn ein Faktor zwischen 1 und 99 festgelegt wird, bestimmt das Werkzeug den Prozentsatz der zu verwendenden logischen Kerne, indem die Formel (Faktor für parallele Verarbeitung / 100 * logische Kerne) auf die nächste Ganzzahl aufgerundet angewendet wird. Wenn das Ergebnis dieser Formel 0 oder 1 ist, wird die parallele Verarbeitung nicht aktiviert.
Syntax
arcpy.analysis.ApportionPolygon(in_features, apportion_fields, target_features, out_features, method, {estimation_features}, {weight_field}, {maintain_geometries})
Parameter | Erklärung | Datentyp |
in_features | Die Polygon-Features, die numerische Attribute aufweisen, die in den Ziel-Polygon-Geometrien zusammengefasst werden. | Feature Layer |
apportion_fields [apportion_fields,...] | Die numerischen Felder der Eingabe-Polygone, die von jedem Ziel-Polygon zusammengefasst werden und in der Ausgabe-Feature-Class gespeichert werden. | Field |
target_features | Die Polygon-Features, die in die Ausgabe-Feature-Class kopiert werden und alle aufgeteilten Felder enthalten. | Feature Layer |
out_features | Die Ausgabe-Feature-Class, die die Attribute und Geometrien der Ziel-Polygone und die angegebenen Aufteilungsfelder aus den Eingabe-Polygonen enthält. | Feature Class |
method | Gibt die Methode an, mit der die Felder aus den Eingabe-Polygonen auf die Ziel-Polygone aufgeteilt werden.
| String |
estimation_features (optional) | Dieser Parameter ist in ArcGIS Pro 2.7 deaktiviert und wird in einer zukünftigen Version unterstützt. | Feature Layer |
weight_field (optional) | Ein numerisches Feld aus dem Ziel-Polygon-Layer, das verwendet wird, um festzulegen, welche Ziel-Polygone größere aufgeteilte Werte aus den Feldern der Eingabe-Polygone für die Aufteilung erhalten. Zielen mit einer höheren Gewichtung werden in einem größeren Verhältnis Feldwerte zugeteilt. | Field |
maintain_geometries (optional) | Gibt an, ob eine Ausgabe-Feature-Class die ursprünglichen Geometrien aus dem Ziel-Polygon-Layer beibehält.
| Boolean |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion ApportionPolygon verwenden.
import arcpy
arcpy.env.workspace = "C:/data/MyAnalysis.gdb"
arcpy.ApportionPolygon_analysis(
"CensusBlockGroups", "Pop2020", "StoreServiceArea",
"StoreServiceArea_w_Population", "AREA", "", "", "MAINTAIN_GEOMETRIES")
Das folgende eigenständige Skript überträgt eine Population mit Flächengewichtung von einem Blockgruppen-Layer zu einem Filialeinzugsgebiet-Polygon.
# Name: Store Service Area Get Population.py
# Description: Use apportionment to transfer population figures to different geometry
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/MyAnalysis.gdb"
# Perform apportionment
inputDataWithPop = "CensusBlockGroups"
popField = "Pop2020"
targetServiceAreas = "Store_ServiceAreas"
outputApp = "Store_ServiceAreas_w_Population"
apportionMethod = "AREA"
keepTargetGeom = "MAINTAIN_GEOMETRIES"
arcpy.ApportionPolygon_analysis(inputDataWithPop, popField, targetServiceAreas,
outputApp, apportionMethod, "", "",
keepTargetGeom)
# Summarize store service area populations by store admin region
outStats = "PopulationPerSalesRegion_tlb"
statsFields = [["Pop2020", "SUM"]]
regionField = "SalesRegion" # Values like North, North-East, etc.
arcpy.Statistics_analysis(outputApp, outStats, statsFields, regionField)
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja