How to Convert X Y Coordinates to Latitude and Longitude in Arcgis
Parameters
Label | Explanation | Data Type |
Input Table | The input table or text file. Point features are also valid. | Table View |
Output Feature Class | The output point feature class. The attribute table will contain all fields of the input table along with the fields containing converted values in the output format. | Feature Class |
X Field (Longitude) | A field from the input table containing the longitude value. For the Input Coordinate Format parameter's DD 2, DD numeric, DDM 2, and DMS 2 options, this is the longitude field. For the DD 1, DDM 1, and DMS 1 options, this field contains both latitude and longitude values in a single string. For the Gars, Georef, Georef 16, UTM zones, UTM bands, USNG, USNG 16, MGRS, and MGRS 16 options, this field contains an alphanumeric notation in a single text field. | Field |
Y Field (Latitude) | A field from the input table containing the latitude value. For the Input Coordinate Format parameter's DD 2, DD numeric, DDM 2, and DMS 2 options, this is the latitude field. This parameter is inactive when one of the single-string formats is chosen. | Field |
Input Coordinate Format | Specifies the coordinate format of the input fields. DD, DDM, DMS, and UTM are also valid keywords; they can be used just by typing in (on dialog) or passing the value in scripting. However, keywords with underscore and a qualifier tell more about the field values.
| String |
Output Coordinate Format | Specifies the coordinate format to which the input notations will be converted. DD, DDM, DMS, and UTM are also valid keywords; they can be used just by typing in (on dialog) or passing the value in scripting. However, keywords with underscore and a qualifier tell more about the field values.
| String |
ID (Optional) | This parameter is no longer used as all fields are transferred to output table. | Field |
Output Coordinate System (Optional) | The spatial reference of the output feature class. The default is GCS_WGS_1984. The tool projects the output to the spatial reference specified. If the input and output coordinate systems are in a different datum, a default transformation will be used based on the coordinate systems of the input and the output and the extent of the data. | Spatial Reference |
Input Coordinate System (Optional) | The spatial reference of the input data. If the input spatial reference cannot be obtained from the input table, a default of GCS_WGS_1984 will be used. | Coordinate System |
Exclude records with invalid notation (Optional) | Specifies whether records with invalid notation will be excluded.
| Boolean |
arcpy.management.ConvertCoordinateNotation(in_table, out_featureclass, x_field, y_field, input_coordinate_format, output_coordinate_format, {id_field}, {spatial_reference}, {in_coor_system}, {exclude_invalid_records})
Name | Explanation | Data Type |
in_table | The input table or text file. Point features are also valid. | Table View |
out_featureclass | The output point feature class. The attribute table will contain all fields of the input table along with the fields containing converted values in the output format. | Feature Class |
x_field | A field from the input table containing the longitude value. For the input_coordinate_format parameter's DD_2, DD_NUMERIC, DDM_2, and DMS_2 options, this is the longitude field. For the DD_1, DDM_1, and DMS_1 options, this field contains both latitude and longitude values in a single string. For the GARS, GEOREF, GEOREF16, UTM_ZONES, UTM_BANDS, USNG, USNG16, MGRS and MGRS16, this field contains an alphanumeric system of notation in a single text field. | Field |
y_field | A field from the input table containing the latitude value. For the input_coordinate_format parameter's DD_2, DD_NUMERIC, DDM_2, and DMS_2, this is the longitude field. This parameter is ignored when one of the single-string formats is chosen. | Field |
input_coordinate_format | Specifies the coordinate format of the input fields.
DD, DDM, DMS, and UTM are also valid keywords; they can be used just by typing in (on dialog) or passing the value in scripting. However, keywords with underscore and a qualifier tell more about the field values. | String |
output_coordinate_format | Specifies the coordinate format to which the input notations will be converted.
DD, DDM, DMS, and UTM are also valid keywords; they can be used just by typing in (on dialog) or passing the value in scripting. However, keywords with underscore and a qualifier tell more about the field values. | String |
id_field (Optional) | This parameter is ignored as all fields are transferred to output table. | Field |
spatial_reference (Optional) | The spatial reference of the output feature class. The default is GCS_WGS_1984. The tool projects the output to the spatial reference specified. If the input and output coordinate systems are in a different datum, a default transformation will be used based on the coordinate systems of the input and the output and the extent of the data. | Spatial Reference |
in_coor_system (Optional) | The spatial reference of the input data. If the input spatial reference cannot be obtained from the input table, a default of GCS_WGS_1984 will be used. | Coordinate System |
exclude_invalid_records (Optional) | Specifies whether to exclude records with invalid notation.
| Boolean |
Code sample
The following stand-alone script demonstrates how to use the ConvertCoordinateNotation function with one input format field.
# import arcpy module import arcpy # set locals variables in_tab = r"c:\data\notation.gdb\loc_mgrs" out_pts = r"c:\data\notation.gdb\loc_final" # call Convert Coordinate Notation with MGRS as input field. # leaving out spatial reference parameter will default to WGS 1984 arcpy.ConvertCoordinateNotation_management(in_tab, out_pts, "m10d", "#", "MGRS", "DD_1")
The following stand-alone script demonstrates how to use the ConvertCoordinateNotation function with two input format fields.
# imports import arcpy arcpy.env.workspace = r"c:\data\mtf.gdb" # set parameter values input_table = 'rit_up_DD' output_points = 'ritLOC' x_field = 'LON' y_field = 'LAT' input_format = 'DD_2' output_format = 'GARS' id_field = 'CITY_NAME' spatial_ref = arcpy.SpatialReference('WGS 1984') try: arcpy.ConvertCoordinateNotation_management(input_table, output_points, x_field, y_field, input_format, output_format, id_field, spatial_ref) print(arcpy.GetMessages(0)) except arcpy.ExecuteError: print(arcpy.GetMessages(2)) except Exception as ex: print(ex.args[0])
The following stand-alone script demonstrates how to use the ConvertCoordinateNotation function with UTM_ZONES and UTM_BANDS formats.
# imports import arcpy arcpy.env.workspace = r"c:\data\ccn.gdb" # export_utm58 table contains coordinates in UTM_BANDS format # where N and S indicate latitude bands, # for example, 58S4144921393176 - here 58S is latitude band input_table = 'export_utm58' # the coordinate values in output point table will be in UTM_ZONES format # for example, 58N4144921393176 - note that it is now 58N because # the point is in UTM 58 North zone output_points = 'utm_zone18' spatial_ref = arcpy.SpatialReference('WGS 1984') try: arcpy.ConvertCoordinateNotation_management(input_table, output_points, "LOCS", "", "UTM_BANDS", "UTM_ZONES", "", spatial_ref) print(arcpy.GetMessages(0)) except Exception as ex: print(ex.args[0])
The following stand-alone script demonstrates how to use the ConvertCoordinateNotation function to convert the output text decimal degree values to floating point values. Note that instead of S and W, a minus sign is used.
# imports import arcpy # output from Convert Coordinate Notation tool # for DD_2 (and also for DD_1) format, the output values are in string format # for example, for DD_1, the output values may be '43.63872N 116.24135W' in_table = r"c:\data\ccn.gdb\ccn_dd1" # add a field of type DOUBLE to store the numeric longitude value arcpy.AddField_management(in_table, "DDLonDbl", "DOUBLE") # now call CalculateField tool to convert the values, 'W' is negative expr = """def convertToDouble(fldval): val = float(fldval[:-1]) if fldval[-1:] == 'W': return val * -1.0 else: return val""" # DDLon field contains longitudes in a string field arcpy.CalculateField_management(in_table,"DDLonDbl","convertToDouble(!DDLon!)","PYTHON_9.3",expr) # add another field to store the numeric longitude value arcpy.AddField_management(in_table, "DDLatDbl", "DOUBLE") # call CalculateField again to convert the values, 'S' is negative expr = """def convertToDouble(fldval): val = float(fldval[:-1]) if fldval[-1:] == 'S': return val * -1.0 else: return val""" # DDLat field contains latitudes in a string field arcpy.CalculateField_management(in_table,"DDLatDbl","convertToDouble(!DDLat!)","PYTHON_9.3",expr)
How to Convert X Y Coordinates to Latitude and Longitude in Arcgis
Source: https://pro.arcgis.com/en/pro-app/latest/tool-reference/data-management/convert-coordinate-notation.htm
0 Response to "How to Convert X Y Coordinates to Latitude and Longitude in Arcgis"
Post a Comment