matlab绘制三维曲面图的问题

x在[1,10]之间取值,y在[16,25]之间取值,对于x、y区间范围内的每一个(x,y)值都对应一个z值,这样说(x,y,z)应该有10x10组,我怎么画出这个曲面图呢?我自己的想法是把(x,y)的每一种组合依次写出,对应的z值也写出,但这种方法有些麻烦,想问问有没有更简单的方法
matlab菜鸟,恭请各位大神指导!

x=1:10;y=16:25;
[X,Y]=meshgrid(x,y);
%你可以自己看一下X,Y长什么样子,大概就是(X(i,j),Y(i,j))组成了所有(x,y)的组合。
%然后把z算出来,比如z=X.*Y就是说z=z(x,y)=xy
mesh(X,Y,z)%或者surf(X,Y,z)或者其他函数,看你想要什么样的图。

参看MATLAB里meshgrid、mesh这些函数的帮助。追问

z与x,y的关系也不是某种明确的函数关系,就是一组(x,y)值都对应一个确定的z值,(x,y)的组合有10x10组,所以也有100个z值,我就是想问,除了上面我说的方法,有什么更简单的方法能用这100组数画出曲面图。

主要是数据我不想那样几乎一个个的输入,想问一下有没有比较简单的方法,谢谢

追答

如果对z(x,y)啥都不知道大概就只能输入数据了。如果你已经有原式数据,可以考虑读到MATLAB里再处理一下(比如reshpae()神马的)变成X,Y那种样子。

温馨提示:答案为网友推荐,仅供参考
相似回答