matlab根據離散資料生成平滑曲線且求得擬合函式

2021-10-04 05:48:06 字數 1283 閱讀 1581

主要使用兩個函式進行擬合

p5=polyfit(x,y,5)函式:x表示擬合的離散資料的x的值,y表示擬合的y的離散值,5表示5階擬合

y5=polyval(p5,x)函式,主要用於求得擬合的誤差,p5表示前面的資料擬合p5,x為離散資料的x範圍

相較之前的理解,可以使用

p5=vpa(poly2sym(p5),5);

用於生成多項式

clear all

clcx=

[0.3

0.40.7

0.91.2

1.92.8

3.23.7

4.5];y=

[123

4526

927]

;p5=

polyfit

(x,y,5)

;%5階多項式的擬合

y5=polyval

(p5,x)

;%ployval用來計算誤差

%顯示5階的多項式

p5=vpa

(poly2sym

(p5),5

);p9=polyfit

(x,y,9)

;y9=

polyval

(p9,x)

;figure;

plot

(x,y,

'bo');

hold on;

plot

(x,y5,

'r:');

plot

(x,y9,

'g--');

legend

('原始資料'

,'5階多項式擬合'

,'9階多項式擬合');

xlabel

('x');

ylabel

('y'

);

多項式的擬合效果圖為

擬合資料的多項式為:

p5 =

0.8877x^5 - 10.3x^4 + 42.942x^3 - 77.932x^2 + 59.833*x - 11.673

補充:matlab』畫圖過程中使用的線的型號和顏色總結

顏色、線型、標記符如下所示:

color =

;%顏色

linestyle =

;%線型

markerstyle =

;%標記符

Matlab生成資料

有四種基本隨機數函式 rand randi randn 和 randperm。rand 函式返回在 0 和 1 之間均勻分布的實數。例如,r1 rand 1000,1 r1 是乙個含有均勻分布浮點實數的 1000 x 1 的列向量。r1 中的所有值均處於開區間 0,1 內。這些值的直方圖大致上是扁平...

根據資料庫生成 sql insert 資料

create procedure dbo.uspoutputdata tablename sysname as declare column varchar 1000 declare columndata varchar 1000 declare sql varchar 4000 declare x...

根據資料和模板生成頁面

根據規則去解析鏈結,並且獲取id或者索引值 請求路徑,let pathobj path.parse req.url let index pathobj base 根據索引獲取資料 let movies let index rpathobj base movies index 3.根據模板渲染頁面 r...