(経度、緯度) ポイント (5.068913, 52.067567) を指定して、 を使用して EPSG 4326 から EPSG 28992 に変換したいと思いpyproj
ます。
Proj
、および両方のtransform
関数は、このpyproj
ようなタスクに適しているようです。
- https://pyproj4.github.io/pyproj/dev/api/proj.html?highlight=proj#pyproj-proj
- https://pyproj4.github.io/pyproj/dev/api/transformer.html?highlight=transform#pyproj-transform
関数を使用すると、 を使用した場合とProj
は異なる結果が得られtransform
ます。なぜですか?
例えば
from shapely.geometry import Point
from pyproj import Proj, transform
from matplotlib import pyplot as plt
x1, y1 = 5.068913, 52.067567
in_proj = Proj(init='epsg:4326')
out_proj = Proj(init='epsg:28992')
point1 = Point(out_proj(x1, y1))
point2 = Point(transform(in_proj, out_proj, x1 ,y1))
print(point1 == point2)
fig, ax = plt.subplots()
x, y = point1.xy
ax.plot(x, y, 'ro')
x, y = point2.xy
ax.plot(x, y, 'ro')