Ich schreibe ein Python-Skript, das mehrere XML-Dateien mit x- und y-Koordinaten liest und sie alle zu einer einzigen CSV-Datei kombiniert. Breiten- und Längengrade sind Pflichtfelder in der CSV, aber ich habe Schwierigkeiten, die x, y-Koordinaten in der Ohio North State Plane usFt in WGS84 umzuwandeln.
>>> p = Proj(r'+proj=lcc +lat_1=41.7 +lat_2=40.43333333333333 +lat_0=39.66666666666666 +lon_0=-82.5 +x_0=600000 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=us-ft +no_defs') #Nad83 State Plane Ohio North US Feet Proj object using parameters
>>> p(739400.91,2339327.3,inverse=True)
(-80.138057868777224, 60.278230707978487)
>>> p1 = Proj(init="epsg:3734") #Nad83 State Plane Ohio North US Feet Proj object using EPSG code
>>> p1(739400.91,2339327.3,inverse=True)
(-80.138057868777224, 60.278230707978487)
Beide oben genannten Methoden liefern das gleiche Ergebnis, jedoch befindet sich dieser Lat Long irgendwo in Hudson Bay. Wenn ich die Koordinaten in ArcMap zeichne, lautet die korrekte Lat-Länge: -81,142311,41,688205.
* Beachten Sie, dass alle Lat Longs Long bereitgestellt werden, da dies die Reihenfolge ist, die Proj verwendet
Weiß jemand, warum ich von Proj.4 und pyproj die falschen Koordinaten bekommen würde?
quelle
p1 = Proj( init="epsg:3734", preserve_units=True )
Ich habe tatsächlich versucht, dasselbe zu tun, außer mit dem OH South State Plane Grid, und bin auf Ihre Frage gestoßen. Ich habe mit 3735 falsche Ergebnisse erzielt, jetzt erhalte ich mit 3729 die richtigen Ergebnisse. Ich gehe davon aus, dass Sie die richtigen Ergebnisse erhalten, wenn Sie von 3734 auf 3728 wechseln.
EPSG: 3728: NAD83 (NSRS2007) / Ohio Nord (ftUS) EPSG: 3729: NAD83 (NSRS2007) / Ohio Süd (ftUS) EPSG: 3734: NAD83 / Ohio Nord (ftUS) EPSG: 3735: NAD83 / Ohio Süd (ftUS)
Ich habe Ihren bereitgestellten Latz verwendet, bin lang und bin weniger als einen Fuß entfernt.
p2 = pyproj.Proj (init = "epsg: 3728" ,erve_units = True)
p2 (-81,142311,41,688205)
(2339326.6558868014, 739401.4226131936)
vs 2339327.3, 739400.91
quelle