2011-01-10 12 views
0

Ich bin neu in Python in Kombination mit ArcGIS. Ich habe eine Formdatei mit unterschiedlichen Bereichen A, B und C und eine Zugriffstabelle:ArcGIS und ACCESS Tabelle

Merkmalsbereich

1 A

1 B

2 C

3 A

3 B

Jetzt Ich versuche, eines der Features und der entsprechenden Regionen auszuwählen, um demselben eine andere Farbe zu geben. Gibt es einen guten Weg, dies mit Python zu tun? Vielen Dank für eine Idee.

prost eactor

+1

Es ist eine sehr unscharfe Frage. Vielleicht kannst du erklären, was du versucht hast und warum das nicht funktioniert hat? –

+0

Ich versuche zu: 1. Ich habe eine neue Tabelle nur mit einem Merkmal: arcpy.MakeTableView_management ("Tabelle1", "Tabelle2", "Feature = '1'") 2. Ich kann die Anzahl der Zeilen von die neue Tabelle arcpy.GetCount_management ("Tabelle2") 3. hier ist der Teil, den ich vermisse – eactor

+0

4. Ich kann die a-Region mit ihren Namen auswählen arcpy.SelectLayerByAttribute_management ("regions", "NEW_SELECTION", "NAME = ' A '") arcpy.SelectLayerByAttribute_management (" Regionen "," ADD_TO_SELECTION "," NAME =' B '") Also brauche ich einen Weg, um auf die Namen der Regionen aus meiner neu erstellten Tabelle zuzugreifen, damit ich sie loopen kann Meine Auswahl? Irgendwelche Ideen? – eactor

Antwort

0

Ich denke, dass ich es von meinem eigenen bekam. Hier sind einige wichtige Hinweise:

1) die Tabelle Join und Datei mit der entsprechenden Zeile Form:

arcpy.AddJoin_management("regionsshape","NAME","region_table","NAME") 

2) Schleife über den Tisch und tun Auswahl:

rows = arcpy.SearchCursor("region_table") 
    for row in rows: 
    arcpy.SelectLayerByAttribute_management("regionsshape","NEW_SELECTION","FEATURE_NAME='" + row.getValue("NAME") + "'") 

Sie jetzt nur müssen enthalten, was Sie mit der Auswahl tun in meinem Fall eine Layer-Datei erstellen möchten:

arcpy.MakeFeatureLayer_management("regions",row.getValue("id")) 
    arcpy.SaveToLayerFile_management(row.getValue("id"),"C:/temp/"+row.getValue("id")e+".lyr","ABSOLUTE")