利用

Matlab

实现直线和平面的拟合

2011-04-14 10:45:43|

分类:

算法思想

|

举报

|

字号

订阅

直线和平面拟合是很常用的两个算法,原理非常简单。但如果

matlab

不太熟的

话,写起来也不是那么容易。搜了很久才找到这两个代码,保存之,免得日后麻

烦。

1

、直线拟合的

matlab

代码

% Fitting a best-fit line to data, both noisy and non-noisy

x = rand(1,10);

n = rand(size(x)); % Noise

y = 2*x + 3; % x and y satisfy y = 2*x + 3

yn = y + n; % x and yn roughly satisfy yn = 2*x + 3 due to the noise

% Determine coefficients for non-noisy line y=m1*x+b1

Xcolv = x(:); % Make X a column vector

Ycolv = y(:); % Make Y a column vector

Const = ones(size(Xcolv)); % Vector of ones for constant term

Coeffs = [Xcolv Const]\Ycolv; % Find the coefficients

m1 = Coeffs(1);

b1 = Coeffs(2);

% To fit another function to this data, simply change the first

% matrix on the line defining Coeffs

% For example, this code would fit a quadratic

% y = Coeffs(1)*x^2+Coeffs(2)*x+Coeffs(3)

% Coeffs = [Xcolv.^2 Xcolv Const]\Ycolv;

% Note the .^ before the exponent of the first term

% Plot the original points and the fitted curve

figure

plot(x,y,'ro')

hold on

x2 = 0:0.01:1;

y2 = m1*x2+b1; % Evaluate fitted curve at many points

plot(x2, y2, 'g-')

title(sprintf('Non-noisy data: y=%f*x+%f',m1,b1))

% Determine coefficients for noisy line yn=m2*x+b2

Xcolv = x(:); % Make X a column vector

Yncolv = yn(:); % Make Yn a column vector

Const = ones(size(Xcolv)); % Vector of ones for constant term

NoisyCoeffs = [Xcolv Const]\Yncolv; % Find the coefficients

m2 = NoisyCoeffs(1);

b2 = NoisyCoeffs(2);

% Plot the original points and the fitted curve

figure

matlab中散点图的线性拟合_Matlab直线拟合和平面拟合相关推荐

  1. matlab中散点图的线性拟合_【在线等】Matlab 散点图线性拟合

    我着急做个图,具体题目是:有三组数据:分别为x,y,z,做一个散点图,然后线性拟合,并且在图中显示拟合直线方程,请写出全部运行语句并稍加解释.x坐标名称为H(m),y为S(mm),z为Sf(mm),数 ...

  2. python 最小二乘法三维坐标拟合平面_matlab三维曲面进行平面拟合,利用最小二乘法...

    展开全部 可以直接2113使用matlab的曲面拟5261合工具箱,但是平面4102拟合的效果一1653般 1.在命令窗口内输入待拟合容的数据>> x=[11.4,11.4,11.4,11 ...

  3. MATLAB中散点图的绘制方法

    Matlab R2017b 绘制散点图 原创 TechArtisan6 最后发布于2018-08-16 11:25:16 阅读数 16712 收藏 发布于2018-08-16 11:25:16 分类专 ...

  4. matlab 万能,matlab 万能实用的线性曲线拟合方法

    在科学计算和工程应用中,经常会遇到需要拟合一系列的离散数据,最近找了很多相关的文章方法,在这里进行总结一下其中最完整.几乎能解决所有离散参数线性拟合的方法 第一步:得到散点数据 根据你的实际问题得到一 ...

  5. lsqcurvefit拟合结果为复数_非线性拟合怎么转化为线性拟合?

    1. 前言 对于多项式函数,可以用最小二乘法求得精确的拟合结果,使得拟合函数具有全局最优的拟合误差:对于某些非线性函数,如指数函数 ,也可以对函数转化后,求得精确的拟合结果,如上述指数函数可转化为 , ...

  6. MATLAB中利用cftool导出代码实现一张图中拟合多条平滑曲线

    MATLAB中自带的cftool拟合工具箱不能将多条曲线同时画在同一副图中,而常规的plot()函数又不能拟合平滑直线,接下来总结一种可以利用cftool导出的代码,在一张图中拟合多条平滑曲线. 首先 ...

  7. 【数学建模】Matlab实现判别分析(线性判别和二次判别分析)

    Matlab实现判别分析(线性判别和二次判别分析) 一.简介 二.判别分析的方法 2.1 费歇(FISHER)判别思想 2.1 贝叶斯(BAYES)判别思想 三.Matlab 实现判别分析 3.1 代 ...

  8. 【C++】【Ctrl+CV即可食用】三维点拟合空间直线

    前景概述 网上三维点拟合空间直线的代码很多 大多数都是python或者matlab 这里贴一个C++的代码 原目的是拟合出直线之后任取两个点手动计算一下斜率 数学原理 最小二乘拟合直线方程: x−x0 ...

  9. MATLAB 美国标准普尔500指数(sp500)的资产收益率分布的拟合与检验 统计图 拟合检验 描述性统计量分析 matlab

    MATLAB 美国标准普尔500指数(sp500)的资产收益率分布的拟合与检验 统计图 拟合检验 描述性统计量分析 matlab 文章目录 实验内容 实验(一):下载并保存数据 实验(二):数据的描述 ...

最新文章

  1. 009-回归测试的测试范围是什么?
  2. 补码还原为原码c语言,C语言知识汇总 | 12-整数(有、无符号数)在内存中的存储——原码、反码与补码...
  3. java for 执行顺序_java – @BeforeMethod和继承 – 执行顺序(TestNG)
  4. 一分钟了解阿里云产品:容器服务概述
  5. 如何快速实现高并发短文检索-转
  6. 区块链BaaS云服务(17)纸贵科技Z-BaaS平台“跨链”
  7. JavaScript操作select标签详解
  8. [bzoj2456]mode
  9. 开发直播APP软件一定要了解的H.264编码,即时通讯中的战斗机
  10. echarts 4.0.4怎么下载_怎么让ECharts的提示框tooltip自动轮播?
  11. conda 删除env_软件包与环境管理神器之conda
  12. ifconfig命令举例
  13. 图灵机器人调用数据恢复_python:用itchat打造属于自己的微信聊天机器人,24小时运行...
  14. 有关csdn博客账号注销说明
  15. 算法分析与设计:棋盘覆盖问题(分治法)
  16. 中国有些东西不是给人吃的
  17. 如何运用SWOT分析法
  18. Nature:阐明肿瘤代谢的脆弱性
  19. devops学习(十一) 构建主分支--触发器--钉钉通知
  20. 易语言取html显示的文本,易语言 获取网页文本

热门文章

  1. springboot项目进行 mvn install 时报错 repackage failed: Unable to find main class 处理记录
  2. kali开启流量转发进行流量分析
  3. linux mysql 备份还原数据库_备份和还原MySQL数据库的简便方法
  4. 自学python没有证书_为什么我自学了六个月Python,投简历一点回应都没有
  5. 把一个数分解其个位,十位,百位,千位,万位 (C语言)
  6. 厦门信息学校计算机动漫,厦门江四是什么学校 现厦门信息学校
  7. 问题贴 STM32 SPI 读写 W25Q64 接上逻辑分析仪后读取失败
  8. javaWeb-filter(过滤器二)
  9. 学会自己测天气之 起卦篇
  10. EMQX Cloud 影子服务:便捷数据缓存服务,加速 IoT 应用开发