matlab用二次函数拟合数据
时间: 2023-08-20 22:06:10 浏览: 69
在Matlab中,可以使用 `polyfit` 函数来进行二次函数拟合。具体步骤如下:
1. 准备数据:将需要拟合的数据放入一个向量中,例如 `x = [1, 2, 3, 4, 5]` 和 `y = [2, 5, 9, 15, 22]`。
2. 进行二次函数拟合:使用 `polyfit` 函数进行二次函数拟合,语法为 `p = polyfit(x, y, n)`,其中 `x` 和 `y` 分别是输入数据的向量,`n` 是多项式的次数(在这里为2),`p` 是返回的多项式系数向量,按降幂排列。
```matlab
p = polyfit(x, y, 2);
```
3. 绘制拟合曲线:使用 `polyval` 函数生成由拟合函数定义的坐标,然后将其绘制在原始数据的散点图上。
```matlab
x_fit = linspace(min(x), max(x), 100);
y_fit = polyval(p, x_fit);
plot(x, y, 'o', x_fit, y_fit);
```
完整的二次函数拟合示例代码如下:
```matlab
x = [1, 2, 3, 4, 5];
y = [2, 5, 9, 15, 22];
p = polyfit(x, y, 2);
x_fit = linspace(min(x), max(x), 100);
y_fit = polyval(p, x_fit);
plot(x, y, 'o', x_fit, y_fit);
```
执行结果将绘制出原始数据的散点图和拟合曲线。