【发布时间】:2017-02-05 13:28:20
【问题描述】:
我正在尝试使用scipy.interpolate.interp1d将经度和纬度值绘制为地图图像的 x 坐标和 y 坐标像素。我有样本值:
y = [0, 256, 512, 768, 1024, 1280, 1536]
lat = [615436414755, 615226949459, 615017342897, 614807595000, 614597705702, 614387674936, 614177502635]
x = [0, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2304]
lon = [235986328125, 236425781250, 236865234375, 237304687500, 237744140625, 238183593750, 238623046875, 239062500000, 239501953125, 239941406250]
当我像这样传递给函数时:
xInterpolation = interp1d(xDegree, xPixel)
yInterpolation = interp1d(yDegree, yPixel)
return (int(xInterpolation(lon)),int(yInterpolation(lat)))
我得到值错误:
ValueError("a value in x_new is above the interpolation " ValueError: A value in x_new is above the interpolation range.
无论我尝试什么值,它都会引发值错误,我什至尝试给出与输入列表中相同的 lat 或 lon 值,但这也不起作用。有人知道这里发生了什么吗?或者,如果我使用了错误的插值。
【问题讨论】:
标签: python scipy interpolation