在 Matlab 2017 的曲线拟合工具中插值数据点



我有一组 13 个实验点,X 的范围从 0 到 100,间隔不相等,对应的值为 Y。 使用曲线拟合工具(插值、PCHIP(我可以得到一个图形,也可以使用数据光标获取间歇点的值。但是,我需要 1000 个值,从 0 到 100 以 0.1 的相等间隔间隔。如何从该工具获取这 1000 个值?旧 matlab 中曾经有一个"评估"选项,但我在这个选项中没有看到。

找到了将拟合结果保存到工作区的选项。在那之后,这很容易。x1 = (0:0.1:100(。y1 = 拟合曲线 (x1(;

现在我觉得自己很傻。

下面介绍如何在脚本中获取等间距插值数据:

% Your data
x = [0;4;6;10;11;13;17;23;24;34;35;37;39;40;49;58;78;82;90;94;100];
y = sin([0.51;1.15;1.19;1.86;1.92;2.32;2.74;2.81;2.83;3.44;3.93;...
     4.07;4.08;4.32;4.6;4.68;4.87;4.9;4.99;5.14;5.84]*3);
% Create new equally-distant baseline
x2 = linspace(0,100,1000); 
% Fit your data, compute new values of y for x2
y2 = pchip(x,y,x2);
% Plot everything
figure
hold all
plot(x,y,'kx')
plot(x2,y2,'r-');

最新更新