得用拟合或插值。
常用的拟合有多项式拟合 POLYFIT
插值有 INTERP1,SPLINE,LAGR1 等。。。
在 Matlab 中,用于曲线和曲面平滑的方法与函数很多,曲线平滑可用 smooth 和 smoothts
等,三维数据可用 smooth3,另外样条工具箱中也有不少可用于平滑数据的函数,如三次样
条 csaps 和 B 样条 spaps 等。
matlab 中三维作图功能总结 2007-12-09 11:29plot3 画三维坐标中的点,连线,但只能顺序
连接。
surf(X,Y,Z) 用 X 和 Y 定义 x-y 坐标网格,Z 定义网格上每一点的高度,来生成三维曲面。
如:[X,Y,Z] = peaks(30);surf(X,Y,Z)
mesh,和 surf 一样,只不过生成的是网格。
surface 用法也一样。
fill3 只能生成平面。重点在色彩。
[X,Y,Z]=meshgrid(1:3,1:3,1:5) 生成 3*3*5 的三维网格,X,Y,Z 都是 3*3*5 三维矩阵。
这只是生成坐标网格,还需要一个 V(X,Y,Z)定义图形。
ndgrid 生成三维以上网格时用。
smooth3 作用于体数据,使光滑
isosurface
X,Y,Z 如 meshgrid 的定义。
V 中元素为
1 则表示存在,即要显示。但要连成片的 1 才会显示。
V 中元素如 a>1 时,表示要显示的这个点离上方的网格距离是单位距离的 1/a
圆滑程度由 isovalue 决定,0.9999 是最硬,越接近 0 越圆滑。可同时配合 isocaps.
isocaps 生成并显示图形与坐标系交界处的平面。
patch 接收 isosuface 返回的参数,生成图形。