Zusammenfassung
Konvertiert ein strukturiertes NumPy-Array in eine Point-Feature-Class.
Diskussion
Wenn ein Feldname aus dem Eingabe-Array für das Ausgabeformat ungültig ist, wird er validiert. Alle ungültigen Zeichen im Namen des Eingabefeldes werden im Namen des Ausgabefeldes durch einen Unterstrich (_) ersetzt. Beschränkungen für Feldnamen sind abhängig von der verwendeten Datenbank.
NumPyArrayToFeatureClass überschreibt keine vorhandene Feature-Class, selbst dann nicht, wenn die Umgebungseinstellung overwriteOutput auf "True" festgelegt ist.
NumPy is a fundamental package for scientific computing in Python, including support for a powerful N-dimensional array object. For more information, see Working with NumPy in ArcGIS.
Syntax
NumPyArrayToFeatureClass (in_array, out_table, shape_fields, {spatial_reference})
Parameter | Erläuterung | Datentyp |
in_array | Ein strukturiertes NumPy-Array. Das Array muss Feldnamen und NumPy-dtypes enthalten. | NumPyArray |
out_table | The output point feature class to which the records from the NumPy array will be written. | String |
shape_fields [shape_fields,...] | A list (or tuple) of field names used to create the feature class's geometry. Coordinates are specified in the order of x, y, z, and m; z-coordinate and m-value fields are optional. Assuming field names of x, y, z, and m in a numpy array, feature classes could be constructed as below.
| String |
spatial_reference | Der Raumbezug der Feature-Class. Wird dieses Argument angegeben, erfolgt für das Feature eine Projektion (Transformation) aus dem Raumbezug der Eingabe. Bei keiner Angabe wird der Raumbezug der Eingabe-Feature-Class verwendet. Gültige Werte für dieses Argument sind SpatialReference-Objekte oder Zeichenfolgenentsprechungen. (Der Standardwert ist None) | SpatialReference |
Codebeispiel
import arcpy
import numpy
outFC = "C:/data/texas.gdb/fd/pointlocations"
# Create a numpy array with an id field, and a field with a tuple
# of x,y coordinates
array = numpy.array(
[
(1, (471316.3835861763, 5000448.782036674)),
(2, (470402.49348005146, 5000049.216449278)),
],
numpy.dtype([("idfield", numpy.int32), ("XY", "<f8", 2)]),
)
# Define a spatial reference for the output feature class
spatial_ref = arcpy.Describe("C:/data/texas.gdb/fd").spatialReference
# Export the numpy array to a feature class using the XY field to
# represent the output point feature
arcpy.da.NumPyArrayToFeatureClass(array, outFC, ["XY"], spatial_ref)