【问题标题】:PyProj: Mapping latitude/longitude onto rectangle using x,y coordinatesPyProj:使用 x,y 坐标将纬度/经度映射到矩形
【发布时间】:2014-03-25 00:05:20
【问题描述】:

我有一系列纬度/经度坐标,我正试图将它们作为 x,y 坐标投影到地图上。

我正在使用https://code.google.com/p/pyproj/ 库来转换坐标,但我似乎无法找到任何解释函数输出含义的地方?

import PyProj

def ConvertToMapProjection(Coordinates):
    ''' Projects a mapped pair of coordinates onto a map '''

    # Define the projection
    RobinsonProjection = pyproj.Proj("+proj=robin +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +units=m +no_defs")

    East, North = RobinsonProjection(Coordinates[0],Coordinates[1])

    return [East,North]

ConvertToMapProjection([51.5072,0.1275])

返回:

[4866232.474090106, 13636.369990048854]

不清楚单位是什么?将其映射到 900 x 1100 矩形的最佳方法是什么?

【问题讨论】:

    标签: python latitude-longitude proj


    【解决方案1】:

    proj 的默认单位是米(您甚至可以在命令中指定)。

    您使用的参考椭球是 WGS84,其平均半径为 6356752.3142 米(请参阅proj -le

    你可以按这个系数缩小它以获得“单位椭圆体”:

    $ proj +proj=robin +ellps=WGS84 -m 1:6356752.3142
    

    使用单位球面投影会更简单,但不是那么精确:

    $ proj +proj=robin +a=1
    

    问题第二部分的答案is outlined in this post.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-23
      • 2011-12-06
      • 2013-02-23
      • 1970-01-01
      相关资源
      最近更新 更多