PyProj:使用x,y坐标将纬度/经度映射到矩形

时间:2014-02-23 13:38:48

标签: python latitude-longitude proj4

我有一系列纬度/经度坐标,我正试图以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矩形的最佳方法是什么?

1 个答案:

答案 0 :(得分: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.