草庐IT

gridData

全部标签

c++ - C++ 中的 Matlab griddata 等价物

我正在寻找与Matlab的griddata函数或任何2D全局插值方法等效的C++。我有一个使用Eigen3的C++代码。我将有一个包含x、y和z值的EigenVector,以及两个等效于Meshgrid在Matlab中生成的Eigen矩阵。我想将Vectors的z值插值到由Meshgrid等价物定义的网格点上(这将稍微超出原始点的外部,因此需要进行较小的外推)。我不太在意准确性——它不需要完美。但是,我不能接受NaN作为解决方案——无论数据间隙如何,都必须在网格上的所有位置计算插值。换句话说,留在凸包内不是一种选择。我不想从头开始编写插值,但如果有人想向我指出非常好的(和明确的)配方,

matlab插值比较-griddata/interp2

一、matlab插值比较-griddata/interp2最近在使用matlab插值,发现采用griddata计算速度太慢,正好是网格数据就将计算结果与interp2开展了对比,发现速度差别特别大。%%ticFusioG=griddata(lon,lat,FusioGr,data(:,2),data(:,3)); tocdisp(['运行时间:',num2str(toc)]);时间已过16.637986秒。运行时间:16.64ticFusioG1=interp2(lon,lat,FusioGr,data(:,2),data(:,3));tocdisp(['运行时间:',num2str(toc)

python - 类似于 scipy.interpolate.griddata?

我想对给定的3D点云进行插值:我查看了scipy.interpolate.griddata结果正是我所需要的,但据我所知,我需要输入“griddata”,这意味着x=[[0,0,0],[1,1,1],[2,2,2]].但我给定的3D点云没有这种网格外观-x、y值的行为不像网格-不管怎样,每个x、y值只有一个z值。*那么对于我的非网格点云,是否有替代scipy.interpolate.griddata的方法?*编辑:“没有网格外观”意味着我的输入看起来像这样:x=[0,4,17]y=[-7,25,116]z=[50,112,47] 最佳答案

python - 来自 xyz 数据 : griddata invalid index 的 Matplotlib 轮廓

我正在尝试使用具有以下格式的文件的matplotlib绘制等高线图:x1y1z1x2y2z2等等我可以用numpy.loadtxt加载它来获取向量。到目前为止,没有问题。我读这篇文章是为了学习如何绘图,并且可以通过复制粘贴来复制它,所以我确定我的安装没有任何问题:http://matplotlib.org/examples/pylab_examples/griddata_demo.html我知道我必须将x和y作为向量输入,将z作为数组输入,这可以使用griddata完成。这也是我在这个网站上找到的。文档说:zi=griddata(x,y,z,xi,yi)fitsasurfaceofth

Python - matplotlib griddata 的多处理

按照我之前的问题[1],我想对matplotlib的griddata函数应用多处理。是否可以将网格数据拆分为4个部分,每个部分用于我的4个核心?我需要这个来提高性能。例如,试试下面的代码,尝试不同的size值:importnumpyasnpimportmatplotlib.mlabasmlabimporttimesize=500Y=np.arange(size)X=np.arange(size)x,y=np.meshgrid(X,Y)u=x*np.sin(5)+y*np.cos(5)v=x*np.cos(5)+y*np.sin(5)test=x+ytic=time.clock()tes

python - 为两个不规则网格之间的多个插值加速 scipy griddata

我在同一个不规则网格上定义了几个值(x,y,z)我想插入一个新的网格(x1,y1,z1).即,我有f(x,y,z),g(x,y,z),h(x,y,z)我想计算f(x1,y1,z1),g(x1,y1,z1),h(x1,y1,z1).目前我正在使用scipy.interpolate.griddata它运作良好。但是,因为我必须单独执行每个插值并且有很多点,所以速度很慢,计算中有大量重复(即找到最接近的点,设置网格等......)。有没有办法加快计算速度,减少重复计算?即类似于定义两个网格,然后更改插值的值? 最佳答案 每次调用scipy