相关疑难解决方法(0)

python/scipy中的多元样条插值?

是否有库模块或其他直接的方法在python中实现多元样条插值?

具体来说,我在一个规则间隔的三维网格上有一组标量数据,我需要在分散在整个域中的少量点进行插值.对于二维,我一直在使用scipy.interpolate.RectBivariateSpline,我实际上是在寻找三维数据的扩展.

我发现的N维插值例程还不够好:我更喜欢使用LinearNDInterpolator上的样条线来获得平滑度,而且我有太多的数据点(通常超过一百万),例如,径向基函数可以工作.

如果有人知道可以执行此操作的python库,或者我可以调用或移植的另一种语言,我真的很感激.

python interpolation numpy scipy

27
推荐指数
1
解决办法
2万
查看次数

理解scipy.ndimage.map_coordinates上的输入和输出

我试图在网格中的一组点上绘制一条直线.数据位于x,y,z坐标列表中.我认为map_coordinates是我想要的,但是我没有看到输入和输出的形式......任何帮助都将非常感激.

list = [[x1, y1, z1]
        [x2, y2, z2]
        ...
        [xn, yn, zn]]
Run Code Online (Sandbox Code Playgroud)

我想要查找的值是x和y值.

look_up_values= [[x1, y1]
                 [x2, y2]
                 ...
                 [xn, yn]]
Run Code Online (Sandbox Code Playgroud)

我的问题是,为什么map_coordinates期望一个(2,2)数组和输出中的信息(2值列表).

这是一个可行的例子:

from scipy.ndimage.interpolation import map_coordinates
import numpy as np
in_data = np.array([[0.,0.,0.]
                    ,[0.,1.,.2]
                    ,[0.,2.,.4]
                    ,[1.,0.,.2]
                    ,[1.,3.,.5]
                    ,[2.,2.,.7]])
z = map_coordinates(in_data, np.array([[1.,1.],[1.,2.]]), order=1)
print z #I do not understand this output...
#[1. .2]
Run Code Online (Sandbox Code Playgroud)

如果我不得不猜测我会说它在网格上的2点之间插值,那么买输出意味着什么呢?

python scipy

4
推荐指数
2
解决办法
5870
查看次数

标签 统计

python ×2

scipy ×2

interpolation ×1

numpy ×1