qingqing5638 发表于 2009-10-29 15:06

立体图形的插值

如图2,我计算出了16根线(红线两旁各8条)每根线上的每个点处的结果,标有字母P的地方跟每根线垂直的线是弦心距,由于特殊的物理原因,计算得到的数据分为2组,一组为所有弦心距上面的数据,一组为所有弦心距下面的数据。我想插值画出一个立体图形,命令是
xi=linspace(min(rx1(:)),max(rx1(:)));
yi=linspace(min(ry1(:)),max(ry1(:)));
=meshgrid(xi,yi);
ZZ=griddata(rx1,ry1,litifenbu1,XX,YY,'v4');


xi=linspace(min(rx11(:)),max(rx11(:)));
yi=linspace(min(ry11(:)),max(ry11(:)));
=meshgrid(xi,yi);
rx1,ry1和rx11,ry11分别是弦心距上面的和下面所有的x,y坐标值;这样问题就出来了,从图2可以看出,每根线的下半部分的绝对值比上半部分的绝对值大,导致最后得出的立体图形(图1)有两部分组成,不能很好的整合为一个图形。我想请教一下,该怎样插值或者画图得出一个完美的图形。
谢谢

[ 本帖最后由 qingqing5638 于 2009-10-29 15:07 编辑 ]

ChaChing 发表于 2009-10-29 22:01

个人时间/水平专业有限, 看不太清楼主的问题!:@L
实在抱歉, 待高人路过

qingqing5638 发表于 2009-10-30 11:14

回复 沙发 ChaChing 的帖子

我的意思是怎样进行更好的插值呢?
比如一列数据的 rx1=[-0.7,-0.4,0,0.4,0.7];ry1=[-0.9,-0.5,0,0.5,0.9]; 进行三维插值的时候区间为 xi=linspace(-0.7,0.7);yi=linspace(-0.9,0.9);
另一列数据的    rx2=[-0.9,-0.4,0,0.4,0.9];ry1=[-0.8,-0.4,0,0.4,0.8]; 进行三维插值的时候区间为 xi=linspace(-0.9,0.9);yi=linspace(-0.8,0.8);
我想把这两个整合成一个图形,x,y范围都在【-1,1】
请问该怎么做
进行边界外插值?

[ 本帖最后由 ChaChing 于 2009-10-30 21:15 编辑 ]

ChaChing 发表于 2009-10-30 21:16

help axis ?

friendchj 发表于 2009-10-30 22:13

help interp1
yi = interp1(x,Y,xi,method,'extrap') uses the specified method to perform extrapolation for out of range values.

ChaChing 发表于 2009-10-31 00:02

基本上, 从工程角度个人较不喜欢外插!
页: [1]
查看完整版本: 立体图形的插值