pyproj转换坐标偏移量

时间:2013-08-18 20:54:20

标签: python coordinates proj

我正在使用pyproj将一些坐标从WGS84转换为OSGB36。映射出已转换和未转换时不映射到地图上的相同位置。 OSGB36坐标映射到它们应该到达的西北方向约100米处。

有谁知道这里可能有什么问题?

以下是我在代码中所做的一个例子

import pyproy
wgs84=pyproj.Proj("+init=EPSG:4326")
osgb36=pyproj.Proj("+init=EPSG:27700")
row = pyproj.transform(wgs84, osgb36, lng, lat)

1 个答案:

答案 0 :(得分:0)

我想知道这是否与pyproj 1.x内的较旧版本的PROJ有关。

我建议您升级到pyproj 2.2.0,并查看其比较结果:

>>> import pyproj
>>> pyproj.__version__
'2.2.0'
>>> pyproj.proj_version_str
'6.1.0'
>>> from pyproj import Transformer, CRS
>>> transformer = Transformer.from_crs("EPSG:4326", "EPSG:27700")
>>> transformer
<Unknown Transformer: unknown>
unavailable until proj_trans is called
>>> CRS("EPSG:27700")
<Projected CRS: EPSG:27700>
Name: OSGB 1936 / British National Grid
Axis Info [cartesian]:
- E[east]: Easting (metre)
- N[north]: Northing (metre)
Area of Use:
- name: UK - Britain and UKCS 49°46'N to 61°01'N, 7°33'W to 3°33'E
- bounds: (-9.2, 49.75, 2.88, 61.14)
Coordinate Operation:
- name: British National Grid
- method: Transverse Mercator
Datum: OSGB 1936
- Ellipsoid: Airy 1830
- Prime Meridian: Greenwich

>>> transformer.transform(-1, 55)
(8171674.7989976285, -5732606.974077599)