1 基本命令
plot3(x,y,z,'s') %绘制三维曲线
plot3(x1,y1,z1,'s1',x2,y2,z2,'s2',...) %绘制多条三维曲线
说明:当xyz为同维向量时,则绘制以xyz元素为坐标轴的三维曲线;当xyz为同维矩阵的时候,则绘制曲线的条数等于矩阵的列数。s是指定线型,色彩,数据点形的字符串。
2 绘制三维网线图和曲面图
三维网线图和曲面图是三维立体图形,matlab提供了mesh命令用于绘制三维网线图,surf命令用于绘制三维曲面图,这2个命令都能用不同的颜色表示不同的高度
三维立体图形的绘制比三维网线图稍微复杂,在数据准备上需要使用meshgrid命令构成x-y平面上的自变量珊格点矩阵,另外绘制的立体图形还可以进行色彩,明暗,光照和视点的处理。
1)meshgrid命令
为了绘制三维立体图形,matlab的方法是将x方向划分为m份,y方向划分为n份,由各划分点分别作平行于坐标轴的直线,得到m*n个栅格,然后计算出各个栅格点对应的f(x,y),绘制出立体曲面和网线图。
meshgrid是以x,y向量为基准,来产生在x-y平面的各栅格点坐标值的矩阵
语法:
[X,Y]=meshgrid(x,y)
说明:X、Y是栅格点的坐标,为矩阵,x,y为向量。
如:将x(1*m)向量和y(1*n)向量转换为(n*m)的矩阵
>> x=[1 2 3 4]
x =
1 2 3 4
>> y=[5 6 7]
y =
5 6 7
>> [xx,yy]=meshgrid(x,y)
xx =
1 2 3 4
1 2 3 4
1 2 3 4
yy =
5 5 5 5
6 6 6 6
7 7 7 7
>>
三维网线图
语法: mesh(z) %画三维网线图
mesh(x,y,z,c)
当只有参数z时,以z矩阵的行下标作为x坐标轴,把z的列下标当作y坐标轴;x,y分别为x,y坐标轴的自变量;
当有x,y,z参数时,C是指定各点的用色矩阵,当C省略时用色矩阵是z的数据,如果x,y,z,c四个参数都有,则应都是维数相同的矩阵。
三维曲面图
语法:surf(z)
surf(x,y,z,c) 参数设置与mesh同
还有一些其它的命令: meshz(xx,yy,zz) 立体网状图加围裙
meshc(xx,yy,zz) 立体网状图加等高线