Main Content

交互式曲线和曲面拟合

曲线拟合器简介

您可以使用曲线拟合器对数据进行曲线和曲面拟合并查看绘图。

  • 创建、绘制和比较多个拟合。

  • 使用线性或非线性回归、插值、平滑和自定义方程。

  • 查看拟合优度统计量、显示置信区间和残差、删除离群值,并使用验证数据评估拟合。

  • 自动生成代码以拟合和绘制曲线和曲面,或将拟合导出到工作区以供进一步分析。

曲线拟合

  1. 在 MATLAB® 命令行中加载一些示例数据。

    load census

  2. 打开曲线拟合器。

    curveFitter
    或者,在 App 选项卡上的数学、统计和优化组中,点击曲线拟合器

  3. 曲线拟合器选项卡的数据部分中,点击选择数据。在“选择拟合数据”对话框中,选择 cdate 作为 X 数据值,选择 pop 作为 Y 数据值。有关详细信息,请参阅选择要在曲线拟合器中拟合的数据

    Select Fitting Data dialog box, populated by the census data

    曲线拟合器为数据创建默认的多项式拟合。

  4. 尝试不同拟合选项。例如,在拟合选项窗格中,将多项式次数值更改为 3 以进行三次多项式拟合。

    Fit Options pane for a polynomial fit

  5. 曲线拟合器选项卡上的拟合类型部分的拟合库中选择一个不同的模型类型。例如,点击箭头以打开库,然后点击平滑组中的平滑样条。有关您可以拟合的模型的信息,请参阅曲线和曲面的模型类型

    Fit type gallery, listing available two-dimensional model types

  6. 导出部分中,点击导出并选择生成代码

    曲线拟合器在编辑器中创建一个包含 MATLAB 代码的文件,以重建您在交互式会话中当前选定的拟合及其打开的图。

提示

有关详细的工作流示例,请参阅Compare Fits in Curve Fitter App

要创建多个拟合并对其进行比较,请参阅Create Multiple Fits in Curve Fitter App

曲面拟合

  1. 在 MATLAB 命令行中加载一些示例数据。

    load franke

  2. 打开曲线拟合器。

    curveFitter

  3. 曲线拟合器选项卡的数据部分中,点击选择数据。在“选择拟合数据”对话框中,选择 x 作为 X 数据值,选择 y 作为 Y 数据值,选择 z 作为 Z 数据值。有关详细信息,请参阅选择要在曲线拟合器中拟合的数据

    Select Fitting Data dialog box, populated by the Franke data

    曲线拟合器为数据创建一个默认插值拟合。

  4. 曲线拟合器选项卡上的拟合类型部分的拟合库中选择一个不同的模型类型。例如,点击箭头以打开库,然后点击回归模型组中的多项式

    有关您可以拟合的模型的信息,请参阅曲线和曲面的模型类型

    Fit type gallery, listing available three-dimensional model types

  5. 为您选择的模型类型尝试不同的拟合选项。

  6. 导出部分中,点击导出并选择生成代码

    曲线拟合器在编辑器中创建一个包含 MATLAB 代码的文件,以重建您在交互式会话中当前选定的拟合及其打开的图。

提示

有关详细示例,请参阅Surface Fitting to Franke Data

要创建多个拟合并对其进行比较,请参阅Create Multiple Fits in Curve Fitter App

曲线和曲面的模型类型

根据您选定的数据,拟合库显示曲线或曲面拟合组。下表描述曲线和曲面的选项。

拟合组拟合类型曲线曲面
回归模型多项式是(最高 9 次)是(最高 5 次)
指数
对数
傅里叶
高斯
有理数
正弦和
威布尔
S 形
插值插值

是,使用方法:

  • 最近邻点

  • 线性

  • 三次

  • 保形 (PCHIP)

是,使用方法:

  • 最近邻点

  • 线性

  • 自然邻点

  • 三次

  • 双调和(v4)

  • 薄板样条

平滑平滑样条
Lowess
自定义自定义方程
Custom Linear Fitting

有关这些拟合类型的信息,请参阅:

选择要在曲线拟合器中拟合的数据

要以交互方式选择数据,请从命令行将数据导入工作区变量中。然后,打开曲线拟合器并点击选择数据选择数据按钮位于曲线拟合器选项卡的数据部分。

Select Fitting Data with table variable selections

曲线拟合器使用您选择的数据的快照。后续在工作区中对数据的更改不会影响您的拟合。要从工作区更新您的拟合数据,请首先更改变量选择,然后使用下拉列表控件重新选择变量。

选择用于曲线拟合的数据

要选择用于曲线拟合的数据,请在向量、表变量或数组中导入 Y 数据。如果有 X 数据,也将其导入向量、表变量或数组中。XY 变量中的每个变量都可以是向量、数组或表变量。但是,XY 必须具有相同数量的元素。然后,执行以下操作之一:

  • 在“选择拟合数据”对话框中,从 X 数据Y 数据下拉菜单中选择变量。要选择包含在一个表变量中的数据,请选择表名称以在右侧显示第二个下拉菜单。然后,从第二个下拉菜单中选择该变量。

  • 要绘制 Y 变量对其索引的图,请从 Y 数据下拉菜单中只选择 Y 变量。

Select Fitting Data with table and vector variable selections

如果指定权重,权重变量必须与其他数据变量具有相同数量的元素。

选择用于曲面拟合的数据

要选择用于曲面拟合的数据,请将 XYZ 数据分别保存在一个向量、表变量或数组中。每个变量都可以是一个向量、数组或表变量。但是,它们必须满足以下条件之一:

  • XYZ 变量包含相同数量的元素。

    注意

    曲线拟合器期望数据变量大小相同。如果大小不同但元素数相同,则该 App 会重构变量以创建拟合,并在结果窗格中显示警告。

  • X 变量是包含 n 个元素的向量,Y 变量是包含 m 个元素的向量,Z 变量是 m×n 矩阵。在这种情况下,YX 数据分别被视为表的行列标题。有关详细信息,请参阅表格数据

    注意

    如果 Z 变量是一个 n×m 矩阵,App 会通过转置 Z 来创建一个拟合,并提供有关数据变换的警告。您可以在结果窗格中看到该警告。

在“选择拟合数据”对话框中,从 X 数据Y 数据Z 数据下拉菜单中选择变量。如果变量保存在表中,请选择表名称以在右侧显示第二个下拉菜单。然后,从第二个下拉菜单中选择该变量。

Select Fitting Data with table and vector variable selections

同样,您可以在工作区中选择任一数值变量用作权重,包括数值表列。如果指定权重,权重变量必须与 Z 变量具有相同数量的元素。

保存并重新打开会话

您可以保存并重新打开会话,以便轻松访问多个拟合。会话文件包含会话中的所有拟合和变量,并会记住您的布局。

要保存您的会话,请先点击曲线拟合器选项卡上文件部分的保存按钮以打开文件浏览器。接下来,选择会话文件的名称和位置(文件扩展名为 .sfit)。

保存一次会话后,您可以点击保存并选择保存会话,用后续保存覆盖该会话。

要以不同名称保存当前会话,请点击保存并选择会话另存为

要重新打开会话,请在曲线拟合器选项卡上的文件部分中点击打开以打开文件浏览器,您可以在其中选择要加载的已保存曲线拟合器会话文件。

相关主题