MATLAB绘制三维图形(plot3、mesh和surf) |
您所在的位置:网站首页 › 下面的图形可以用上面哪个物体画出来图片 › MATLAB绘制三维图形(plot3、mesh和surf) |
目录 1. plot3()函数 2.mesh()函数 3.surf()函数 4.surfc()和surfl()函数 1. plot3()函数与plot函数相比,plot3函数可以在三维空间内绘制出三维曲线 plot3(x,y,z,选项)其中x,y,z分别是维数相同的向量,分别存储曲线的三个坐标的值,其中“选项”与我之前写过 MATLAB绘制多条曲线(plot函数)文章中一样,可以定义曲线的线形、颜色等。有需要的具体可以参考之前的文章,这里就不再赘述了。 例:用绿色实线绘制一个时间向量 t = 0:pi/50:10*pi; x = sin(t); y = cos(t); z = t; plot3(x,y,z,'g-')另外,为了使三维图形更漂亮,可以绘制出三维曲面图,那么就不得不介绍mesh函数。 2.mesh()函数mesh函数可以绘制三维曲面图,其调用格式: mesh(z)其中z为一个矩阵,表示一个曲面的z坐标。在MATLAB 4.0 下,该曲面网格绘制函数的调用函数可以写成 mesh(x,y,z,c)其中x和y分别为构成该曲面的x和y向量,而c为颜色矩阵,表示在不同的高度下的颜色范围,如果省略此项,则MATLAB会自动地假定c=z,亦即颜色的设定是正比与图形的高度的,这样可以得出一个层次分明的三维图形。 例:在x,y平面内选择一个区域,绘制z=f(x,y) [X,Y] = meshgrid(-8:.5:8); %设置x和y平面的网格%产生一个横纵坐标起始于-8,终止于8,且步距为.5的网格图形 R = sqrt(X.^2 + Y.^2) + eps; Z = sin(R)./R;%计算曲面的z矩阵 mesh(X,Y,Z)%画图有时z矩阵计算过于复杂,使得z为一个高度矩阵 ,此时生成的图形不一定理想,可以调用axis()函数来重新设定坐标系。 axis([min(min(x)) max(max(x)) min(min(y)) max(max(y)) min(min(z)) max(max(z))])
前面的mesh()函数还可以用surf(x,y,z)函数代替,绘制出的图像如图所示 surfc()可以获得带有等高线的三维图形 surfl()可以获得带有阴影的三维图形 它们的调用格式与surf()函数完全一致 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |