执行坐标系转换的库?

P3t*_*rus 5 python numpy coordinate-systems

有没有处理坐标系转换的Python库?我正在使用 numpy 网格网格,但有时切换坐标系很有用。由于我不想重新发明轮子,是否有任何库可以处理:

  • 变换(笛卡尔、球面、极坐标……)
  • 翻译
  • 轮换?

Tom*_*ico 4

您可以使用 shapely 库: http://toblerity.org/shapely/manual.html

仿射变换:http://toblerity.org/shapely/manual.html#affine-transformations

坐标变换:http://toblerity.org/shapely/manual.html#other-transformations 示例代码:

from shapely.geometry import Point
from functools import partial
import pyproj
from shapely.ops import transform

point1 = Point(9.0, 50.0)

print (point1)

project = partial(
    pyproj.transform,
    pyproj.Proj('epsg:4326'),
    pyproj.Proj('epsg:32632'))

point2 = transform(project, point1)
print (point2)
Run Code Online (Sandbox Code Playgroud)

您还可以使用 ogr 库。IE

from osgeo import ogr
from osgeo import osr

source = osr.SpatialReference()
source.ImportFromEPSG(2927)

target = osr.SpatialReference()
target.ImportFromEPSG(4326)

transform = osr.CoordinateTransformation(source, target)

point = ogr.CreateGeometryFromWkt("POINT (1120351.57 741921.42)")
point.Transform(transform)

print (point.ExportToWkt())
Run Code Online (Sandbox Code Playgroud)

(来自http://pcjericks.github.io/py-gdalogr-cookbook/projection.html