Entfernen (Eliminate) (Data Management)

Lizenzstufe:BasicStandardAdvanced

Zusammenfassung

Entfernt Polygone, indem sie mit benachbarten Polygonen zusammengeführt werden, die die größte Fläche oder die längste gemeinsame Grenze besitzen. Entfernen (Eliminate) wird häufig verwendet, um kleine Splitterpolygone zu entfernen, die das Ergebnis eines Überlagerungsvorgangs wie Überschneiden (Intersect) oder Vereinigen (Union) sind.

Bild

Abbildung "Entfernen (Eliminate)"

Verwendung

Syntax

Eliminate_management (in_features, out_feature_class, {selection}, {ex_where_clause}, {ex_features})
ParameterErläuterungDatentyp
in_features

Der Layer, dessen Polygone mit angrenzenden Polygonen zusammengeführt werden.

Feature Layer
out_feature_class

Die zu erstellende Feature-Class.

Feature Class
selection
(optional)

Diese Optionen geben an, welche Methode zur Entfernung von Features verwendet wird.

  • LENGTHFührt ein ausgewähltes Polygon mit einem benachbarten nicht ausgewählten Polygon zusammen. Hierfür wird die gemeinsame Grenze entfernt. Das angrenzende Polygon ist das mit der längsten gemeinsamen Grenze. Dies ist die Standardeinstellung.
  • AREAFührt ein ausgewähltes Polygon mit einem benachbarten nicht ausgewählten Polygon zusammen. Hierfür wird die gemeinsame Grenze entfernt. Das angrenzende Polygon ist das mit der größten Fläche.
Boolean
ex_where_clause
(optional)

Dieser Ausdruck dient zur Identifizierung von Eingabe-Features, die nicht entfernt werden sollen.

Die genaue Syntax für den Ausdruck hängt von der Datenquelle ab. Wenn Sie beispielsweise File- oder ArcSDE-Geodatabases bzw. Shapefiles oder Coverages abfragen, schließen Sie Feldnamen in doppelte Anführungszeichen ein:

"MY_FIELD"

Wenn Sie Personal-Geodatabases abfragen, schließen Sie die Felder in eckige Klammern ein:

[MY_FIELD]

In Python werden Zeichenfolgen in zusammenpassende einfache oder doppelte Anführungszeichen eingeschlossen. Um eine Zeichenfolge zu erstellen, die Anführungszeichen enthält (wie bei einer WHERE-Klausel in SQL-Ausdrücken üblich), können Sie die Anführungszeichen (durch einen umgekehrten Schrägstrich) mit Escapezeichen versehen oder die Zeichenfolge mit dreifachem Anführungszeichen versehen. Wenn die gewünschte WHERE-Klausel z. B.

"CITY_NAME" = 'Chicago'

lautet, könnten Sie die ganze Zeichenfolge in doppelte Anführungszeichen einschließen und dann die inneren doppelten Anführungszeichen wie folgt mit Escapezeichen versehen:

" \"CITY_NAME\" = 'Chicago' "

Oder Sie könnten die ganze Zeichenfolge in dreifache Anführungszeichen ohne Escapezeichen einschließen:

""" "CITY_NAME" = 'Chicago' """

Weitere Informationen zur SQL-Syntax und zu den Unterschieden zwischen Datenquellen finden Sie im Hilfethema SQL-Referenz für in ArcGIS verwendete Abfrageausdrücke.

SQL Expression
ex_features
(optional)

Eingabe-Polyline- oder -Polygon-Feature-Class bzw. -Layer zur Definition von Polygongrenzen oder Teilen von Polygongrenzen, die nicht entfernt werden sollen.

Feature Layer

Codebeispiel

Eliminate – Beispiel (Python-Fenster)

Im folgenden Skript im Python-Fenster wird veranschaulicht, wie Sie das Werkzeug "Eliminate" im unmittelbaren Modus verwenden.

import arcpy
from arcpy import env
env.workspace = "C:/data/Portland.gdb/Census"
arcpy.MakeFeatureLayer_management("blockgrp", "blocklayer")
arcpy.SelectLayerByAttribute_management("blocklayer", "NEW_SELECTION", 
                                        '"Area_Sq_Miles" < 0.15')
arcpy.Eliminate_management("blocklayer", "C:/output/output.gdb/eliminate_output", 
                           "LENGTH", '"OBJECTID" = 9')
Eliminate – Beispiel 2 (eigenständiges Skript)

Das folgende eigenständige Skript veranschaulicht, wie Sie das Werkzeug "Eliminate" verwenden.

# Name: Eliminate_Example2.py
# Description: Eliminate features based on a selection.
 
# Import system modules
import arcpy
from arcpy import env
 
# Set environment settings
env.workspace = "C:/data/Portland.gdb/Census"
 
# Set local variables
inFeatures = "blockgrp"
tempLayer = "blocklayer"
expression = '"Area_Sq_Miles" < 0.15'
outFeatureClass = "C:/output/output.gdb/eliminate_output"
exclusionExpression = '"OBJECTID" = 9'
 
# Execute MakeFeatureLayer
arcpy.MakeFeatureLayer_management(inFeatures, tempLayer)
 
# Execute SelectLayerByAttribute to define features to be eliminated
arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION", expression)
 
# Execute Eliminate
arcpy.Eliminate_management(tempLayer, outFeatureClass, "LENGTH", 
                           exclusionExpression)

Umgebung

Verwandte Themen

Lizenzierungsinformationen

ArcGIS for Desktop Basic: Nein
ArcGIS for Desktop Standard: Nein
ArcGIS for Desktop Advanced: Ja
9/11/2013