ESRI 投影座標を lat-lng に変換する
質問
「NAD 1983 StatePlanemichigan South FIPS 2113 Feet」(別名) に X、Y 座標の大規模なデータセットがあります。 ESRI 102690)。緯度経度のポイントに変換したいと思います。
理論的には、これは何かです プロジェクト を処理するように構築されていますが、ドキュメントは私に手がかりを与えてくれませんでした。ドキュメントでは、はるかに複雑なケースについて説明しているようです。
を使ってみました Pythonインターフェース, 、 そのようです:
from pyproj import Proj
p = Proj(init='esri:102690')
sx = 13304147.06410000000 #sample points
sy = 288651.94040000000
x2, y2 = p(sx, sy, inverse=True)
しかし、それは非常に不正確な出力を生成します。
Javascript ライブラリもありますが、最大 50,000 ポイントを処理する必要があるため、それは適切ではないようです。
私にとってうまくいったこと:
というファイルを作成しました ptest
次のように、各ペアを独自の行に配置し、x 座標と y 座標をスペースで区切ります。
13304147.06410000000 288651.94040000000
...
次に、そのファイルをコマンドに入力し、結果を出力ファイルにパイプ処理しました。
$>cs2cs -f %.16f +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666
+lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80
+datum=NAD83 +to_meter=0.3048006096012192 +no_defs +zone=20N +to
+proj=latlon ptest > out.txt
解決
再投影する必要があるだけで、テキスト ファイルに対してデータマイニングを実行できる場合は、好きなものを使用してください http://spatialreference.org/ref/esri/102690/ 参考として。
たとえば、Proj4 を使用してシェル/cmd ファイルに保存し、proj4 (Linux/Windows バージョンが利用可能) で入力ファイルを呼び出します。データセットのサイズは問題ありません。
cs2cs +proj=latlong +datum=NAD83 +to +proj=utm +zone=10 +datum=NAD27 -r <<EOF
cs2cs -f %.16f +proj=utm +zone=20N +to +proj=latlon - | awk '{print $1 " " $2}
したがって、あなたの場合は次のようなものになります:
cs2cs -f %.16f +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 +lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 +no_defs +zone=20N +to +proj=latlon
他のヒント
TXT、CSV、または XLS ファイルに座標がある場合は、CTRL+C を実行して、それらの座標を次の場所に挿入できます。 http://cs2cs.mygeodata.eu ここで、適切な入力座標系と目的の出力座標系を設定できます。さまざまな形式で数千の座標を挿入することが可能です...