如何解决有没有办法填充插值区域外的空间?
我需要为覆盖 Python 中特定区域的不规则间隔数据创建插值。但是,边界中没有足够的数据来完成插值。
-
我尝试了不同的 griddata 插值方法(线性、最近和三次)和一些 https://docs.scipy.org/doc/scipy/reference/interpolate.html 方法,但虽然改变了插值模式,但它并没有将插值扩展到边界。 查看图片: Image of interpolation using each method: Cubic and Nearest
-
另外,我添加了一个覆盖所有区域的“fill_value”而不是没有值,但它只能允许标量和奇异输入值。 查看图片: Image of interpolation using fill_value
当然,我也可以要求该地区各州的数据,但只要我没有其他解决方案,我就想避免这种情况。
from scipy.interpolate import griddata
# grid data
numcols,numrows = 6000,6000
xi = np.linspace(min(list1),max(list1),numcols)
yi = np.linspace(min(list2),max(list2),numrows)
xi,yi = np.meshgrid(xi,yi)
# interpolate
x,y,z = data['projected_lon'].values,data['projected_lat'].values,data.Valor.values
zi = griddata((x,y),z,(xi,yi),method='cubic',fill_value = 320)
con = m.contourf(xi,yi,zi,zorder=3,alpha=0.6,cmap='Blues')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。