求救编程高手,用matlab仿真直线插补的程序

求救编程高手,用matlab仿真直线插补的程序,第1张

%逐点比较法直线插补

%==========================================================================

F=0 %偏差函数

xs=0 %X起始坐标

ys=0 %Y起始坐标

xe=5 %X终点坐标

ye=6 %Y终点坐标冲则

xo=xs %插补前X坐标

yo=ys %插补前Y坐标

xn=xs %插补后X坐标

yn=ys %插补后Y坐标

dx=1 %X脉冲当量

dy=1 %Y脉冲当量

TT=1 %插补周期

%==========================================================================

n=abs(xe-xs)+abs(ye-ys) %插补次数

plot([xs xe*dx],[ys ye*dy],'r-')hold ongrid on

%==========================================================================

while(n>袜激0)

if(F>=0)

xn=xo+dx

yn=yo

plot([xo xn],[yo yn],'b-')hold ongrid on

xo=xnyo=yn

F=F-ye

else

yn=yo+dy

xn=xo

plot([xo xn],[yo yn],'告判袜b-')hold ongrid on

xo=xnyo=yn

F=F+xe

end

pause(TT)

n=n-1

end

你可以目测下你没数据的点是显示睁销为NAN还是显示为空悉裂游。

你可以用find函数来找到符合你要求的数值源答的位置,再赋值。比如

>>A = [1,nan,2,3]

A =

1 NaN 2 3

>>index = find(isnan(A))

index =

2

>>A(index)=4

A =

1 4 2 3

数据不是凭空出来的。不然不是随便填了。

没有规则,该怎唯早扮么生成数据,比如直接把所有NA的位置填上1或者0.

这样的话,假如这个矩阵是a,那就a(find(a == NA)) = 1

还是直接睁樱线性插值,把NA的数指灶据填成前后数据的平均值什么的。这个就要复杂一些。

还有一些其他的方法。总之没法瞎写。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12397515.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存