方法一、用資料擬合工具箱 Curve Fitting Tool
開啟CFTOOL工具箱。在matlab的command window中輸入cftool,即可進入資料擬合工具箱。
輸入兩組向量x,y。
首先在Matlab的命令列輸入兩個向量,一個向量是你要的x座標的各個資料,另外一個是你要的y座標的各個資料。輸入以後假定叫x向量與y向量,可以在workspace裡面看見這兩個向量,要確保這兩個向量的元素數一致,如果不一致的話是不能在工具箱裡面進行擬合的。
例如在命令列裡輸入下列資料:
x = [196,186, 137, 136, 122, 122, 71, 71, 70, 33];
y = [0.012605; 0.013115; 0.016866; 0.014741; 0.022353; 0.019278; 0.041803; 0.038026; 0.038128; 0.088196];
左側results為擬合結果,下方表格為誤差等統計資料。
方法二、用神經網路工具箱
1、開啟神經網路工具箱,在command window內輸入nftool,進入Neural fitting tool
4、訓練資料,點next,選train。
5、繪製擬合曲線,訓練完成後電機plot fit
訓練結果引數在訓練完後自動彈出
神經網路工具箱可以用command寫,請搜尋關鍵字matlab 神經網路工具箱函式。
方法三、用polyfit函式寫
polyfit函式是matlab中用於進行曲線擬合的一個函式。其數學基礎是最小二乘法曲線擬合原理。曲線擬合:已知離散點上的資料集,即已知在點集上的函式值,構造一個解析函式(其圖形為一曲線)使在原離散點上儘可能接近給定的值。
呼叫方法:a=polyfit(xdata,ydata,n),
其中n表示多項式的最高階數,xdata,ydata為將要擬合的資料,它是用陣列的方式輸入。輸出引數a為擬合多項式 y=a1x^n+...+anx+a,共n+1個係數。
%例程A=polyfit(x,y,2);z=polyval(A,x);plot(x,y,"r*",x,z,"b")
方法四、自行寫演算法做擬合
請參考數值分析教科書,擬合、插值方法較多,演算法並不複雜,靈活套用迴圈即可
方法一、用資料擬合工具箱 Curve Fitting Tool
開啟CFTOOL工具箱。在matlab的command window中輸入cftool,即可進入資料擬合工具箱。
輸入兩組向量x,y。
首先在Matlab的命令列輸入兩個向量,一個向量是你要的x座標的各個資料,另外一個是你要的y座標的各個資料。輸入以後假定叫x向量與y向量,可以在workspace裡面看見這兩個向量,要確保這兩個向量的元素數一致,如果不一致的話是不能在工具箱裡面進行擬合的。
例如在命令列裡輸入下列資料:
x = [196,186, 137, 136, 122, 122, 71, 71, 70, 33];
y = [0.012605; 0.013115; 0.016866; 0.014741; 0.022353; 0.019278; 0.041803; 0.038026; 0.038128; 0.088196];
左側results為擬合結果,下方表格為誤差等統計資料。
方法二、用神經網路工具箱
1、開啟神經網路工具箱,在command window內輸入nftool,進入Neural fitting tool
4、訓練資料,點next,選train。
5、繪製擬合曲線,訓練完成後電機plot fit
訓練結果引數在訓練完後自動彈出
神經網路工具箱可以用command寫,請搜尋關鍵字matlab 神經網路工具箱函式。
方法三、用polyfit函式寫
polyfit函式是matlab中用於進行曲線擬合的一個函式。其數學基礎是最小二乘法曲線擬合原理。曲線擬合:已知離散點上的資料集,即已知在點集上的函式值,構造一個解析函式(其圖形為一曲線)使在原離散點上儘可能接近給定的值。
呼叫方法:a=polyfit(xdata,ydata,n),
其中n表示多項式的最高階數,xdata,ydata為將要擬合的資料,它是用陣列的方式輸入。輸出引數a為擬合多項式 y=a1x^n+...+anx+a,共n+1個係數。
%例程A=polyfit(x,y,2);z=polyval(A,x);plot(x,y,"r*",x,z,"b")
方法四、自行寫演算法做擬合
請參考數值分析教科書,擬合、插值方法較多,演算法並不複雜,靈活套用迴圈即可