參考文獻:http://blog.csdn.net/steelbasalt/article/details/48756143
有兩種方法可以畫平滑曲線,第一種是拟合的方法,第二種是用spcrv,其實原理應該都一樣就是插值。下面是源程式,大家可以根據需要自行選擇,更改拟合的參數。
clc,clear;
a = 1:1:6; %橫坐标
b = [8.0 9.0 10.0 15.0 35.0 40.0]; %縱坐标
plot(a, b, ‘b’); %自然狀态的畫圖效果
hold on;
%第一種,畫平滑曲線的方法
c = polyfit(a, b, 2); %進行拟合,c為2次拟合後的系數
d = polyval(c, a, 1); %拟合後,每一個橫坐标對應的值即為d
plot(a, d, ‘r’); %拟合後的曲線
plot(a, b, ‘‘); %将每個點 用畫出來
hold on;
%第二種,畫平滑曲線的方法
values = spcrv([[a(1) a a(end)];[b(1) b b(end)]],3);
plot(values(1,:),values(2,:), ‘g’);
效果如下: