给定以下示例,是否有一种方法可以实现双色插值,而无需生成整个差距的网格?:
years = [5,10,20,25,40];
service = 1:3;
wage = [50 99 787.685
779 795 850
803 779 388
886 753 486
849 780 598];
w = interp2(service,years,wage,1.5,37.5,'cubic')
警告:"立方"方法要求网格具有统一 间距。将方法从"立方"切换到"样条",因为这 条件未满足。
我了解警告的原因。因此,希望通过指定特定点而无需生成整个均等的表面(可用的数据不相等(来找到解决方案。不一定必须是Interp2。我将不得不将其用于数百个表面和数百个查询点,因此在返回" W"时需要非常快。有什么想法吗?
如果您坚持使用'cubic'
插值方法,则可以使用griddata
,该方法被指定为插值散射数据,即未在均匀间隔网格上定义的数据:
years = [5,10,20,25,40];
service = 1:3;
wage = [50 99 787.685
779 795 850
803 779 388
886 753 486
849 780 598];
w = griddata(service,years,wage,1.5,37.5,'cubic')