我正在努力使用pyproj了解这些预测。
现在我的问题是了解投影操作的结果
我在x,y上投影有以下坐标:
multiApplyTracking = {
track: function track() {
var input = [].slice.call(document.getElementsByTagName("Input"));
checkboxes = input.slice(2, input.length - 3);
var applications = checkboxes.map(function(checkboxes) {
return checkboxes.checked;
}).filter(Boolean).length;
console.log("Number of Applications: " + applications);
if ("ga" in window) {
var tracker = ga.getAll()[0];
if (tracker)
for (i = 0; i < applications; i++) {
tracker.send("event", "User Application", "Apply");
console.log("Application tracked!");
}
}
}
};
multiApplyTracking.track();
20414190.011221122 65799915.8523339 20685694.35308374 66653928.94763097 (376681.6684318804,6229168.979819128)(648186.0102944968,7083182.075116195) (0.0590582592427664,0.8538251057188251)(0.10162622883366988,0.9376231627625158)
为什么我使用相同的投影参数时结果不同 作为地理空间数据处理的新手,我预先为一个可能不重要的问题道歉
答案 0 :(得分:0)
对于Mercator投影,底图在可计算值的左下角使用网格坐标系的原点。使用您的代码,值可以计算为
M(0, 0, inverse=True)
# output: (-180.0, -89.98999999999992)
如果计算(long = 0,lat = 0)的投影坐标并将其值分配给(x0,y0)。您将获得坐标(x0,y0)的偏移,从而使其投影坐标与标准值(在地图中心的0,0)不同。
lon0, lat0 = 0, 0
x0, y0 = M(lon0, lat0)
# x0=20015077.371242613, y0=59546805.8807
对于(long = 3.383789,lat = 48.920575)处的测试点,
lon1 = 3.383789
lat1 = 48.920575
x1, y1 = M(lon1, lat1)
应用坐标偏移后,结果为
print(x1-x0, y1-y0)
# output: (376259.9924608879, 6254386.049398325)
与pyproj
中的值进行比较
p0 = Proj(proj='merc', ellps='WGS84', errcheck = True)
print(p0(lon1, lat1))
# output (376681.6684318804, 6229168.979819128)
他们非常同意,但并没有达成共识。对于小比例尺地图绘图,您看不到地图上的差异。