|
|
如果知道函数关系式,那就不需要散点数据了,不是可以直接用函数生成绘图数据吗?
# r; ?) ?7 a) \3 X9 D& X, Y7 Z _$ T7 |如果是x,y,z散点数据,想用surf函数绘图,那就用下面的语句进行插值得到z的矩阵。# }0 Y; N2 m5 H: k$ a6 W8 T
[X,Y,Z] = griddata(x,y,z,linspace(min(x),max(x))',linspace(min(y),max(y)),'nearest');%插值,网格个数固定为100*100 g. I. E$ `4 s! C+ w' @! \; Z
然后用surf语句进行绘图就可以啦。surf(X,Y,Z); shading interp; axis equal; hold on; R6 p8 Q& `8 o
9 q# w- Y/ W- a6 K" V. C
函数后面的语句都是设置图格式的。
- L' q( {3 x: e* z1 K/ r5 C b* @- C+ B; _; R3 }* ^- h V: j$ A
另外,如果数据点非常多,最好保存为txt或dat文件,然后用load函数导入数据,读入xyz向量,在利用上述语句插值画图就可以了。这种方法可以省掉输入数据的环节,而且进一步如果可以能够编辑好规则的文件名保存为向量,则更加方便进行循环处理。 |
|