表面拟合Matlab

时间:2017-01-10 11:36:16

标签: matlab curve-fitting

我有两个列向量和一个尺寸一致的矩阵:size(x(:) = 3001 x 1,size(y(:))= 28 x 1,size(z)= 3001 x 28。

我正在尝试用线条进行曲面拟合:

sf = fit([x, y] , z, 'linearinterp');

并获取horzcat错误(连接的矩阵的维度不一致)。当然x和y有不同的行数,但我不希望将它们连接起来。我相信我在matlab R2015a中使用了正确的表面拟合语法。我已经使用工具箱成功地安装了表面。

1 个答案:

答案 0 :(得分:1)

您可能需要meshgrid。您需要与x相同数量的yz

如果它们有规律地间隔(我假设,否则你缺少信息),那么meshgrid将解决它:

[xmesh, ymesh]=meshgrid(x,y)
sf =  fit([xmeshx(:), ymesh(:)] , z(:), 'linearinterp');