如何用matlab计算一段折线图的长度呢?无函数,只有坐标点 10

654010905
2012-04-28 · TA获得超过232个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:98.7万
展开全部
假设有两个坐标点(x1,y1)(x2,y2)
那么他们之间的距离用matlab表示为:d=sqrt((x2-x1)^2+((y2-y1)^2))
知道了这一点以后,计算折线的长度无非就是把相邻两点之间的距离累加起来而已
假设折线上的点依次为A0,A1,A2,A3,...An
假设d1为A0,A1之间的距离,d2为A1与A2之间的距离。。。dn为An-1与An之间的距离
即折线长度d=d1+d2+d3+...+dn
如果还有问题的话,欢迎追问!
liuming1573
2012-04-29 · TA获得超过146个赞
知道答主
回答量:101
采纳率:0%
帮助的人:50.6万
展开全部
原来没想回答的,谁知名字还一样!详细点吧~。
由于你的是一个个离散点,我觉得现在记事本中写出来再掉用会更好点。形式是1000*4的矩阵向量,分别是两个点的x,y值。并保存到matlab的工作文件夹,如默认的matlab。否则要写路径。然后用
ab=load **.txt;**是名字
ans=sqrt((ab(:,3)-ab(:,1)).^2+(ab(:,4)-ab(:,2)).^2);
ans1=sum(ans);
其中ans求的是每两个点之间的距离。ans1求的是折线的总长度
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
眼哥眼妹
2012-04-28 · TA获得超过453个赞
知道小有建树答主
回答量:274
采纳率:0%
帮助的人:274万
展开全部
sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+......
追问
一共超过1000个坐标,这么输入我时间根本不够啊
追答
JL = 0;
for i = 2 : length(x)
JL = JL + sqrt((x(i)-x(i-1))^2 +(y(i)-y(i-1))^2);
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式