matlab求两点直线方程,并求其他点到直线的距离

1.求直线方程:
1.1 polyfit()函数,有三个参数:
x:一个包含用于拟合的数据点的 x 坐标的向量。
y:一个包含用于拟合的数据点的 y 坐标的向量。
n:表示拟合多项式的阶数,即多项式的最高次幂。
因此,polyfit(x, y, n) 中的 x 和 y 是数据点的坐标,n 是拟合多项式的阶数。
1.2 polyfit()函数返回的参数:对于一个 n 次多项式拟合,polyfit() 函数返回一个长度为 n+1 的向量,该向量包含了从高阶到低阶的多项式系数。例如,对于一次多项式拟合,polyfit() 返回的向量包含两个值,分别是一次项的系数和常数项的系数。
1.3 代码编写:

[x,y]=[83,150;387150];%点坐标(83,150),(387,150)
coefficients = polyfit(x, y, 1);
k=coefficients(1);
b=coefficients(2);
fprintf('The line equation is: y = %.2fx + %.2f\n', k, b);%打印直线方程

1.4结果可视化对比:在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.点到直线距离:
2.1 公式:
当直线方程为y=kx+b时,距离公式为在这里插入图片描述

因此只需要对该公式进行代码编写转换即可。

points=load('二维点坐标的文件位置’);%文件排列为x,y
distance=abs(k*points(:,1)-points(:,2)+b)/sqrt(1+k^2);
  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值