实验四绘图求解可视化的一般步骤步骤典型指令1准备绘图数据曲线数据准备先取一个参变量采样向量然后计算各坐标数据向量t=pi*(0:100)/100;%参变量采样向量x=f1(t);y=f2(t);z=f3(t);三维曲面数据产生自变量采样向量产生自变量“格点”矩阵计算自变量“格点”矩阵相应的函数值矩阵x=x1:dx:x2;%自变量采样向量y=y1:dy:y2;%自变量采样向量[X,Y]=meshgrid(x,y);%格点矩阵Z=f(X,Y);%计算函数矩阵2选定图形窗及子图位置:缺省时,打开FigureNo.01,或当前窗,当前子图可用指令指定图形窗号和子图号figure(1)%指定1号图形窗subplot(2,2,3)%指定三号子图3调用二维、三维曲线绘图指令:线型、色彩、数据点形plot(x,y,’r:’)%用红虚点画二维线plot3(x,y,z,’b-’)%用兰色实线画曲线调用三维曲面绘图指令mesh(X,Y,Z)4设置轴的范围、坐标分格线axis([x1,x2,y1,y2])%平面坐标范围axis([x1,x2,y1,y2,z1,z2])%三维gridon%坐标分格线5图形注释:图名、坐标名、图例、文字说明tiitle(‘调制波形’)%图名xlabel(‘t’);ylabel(‘y’)%轴名legend(‘sin(t)’,’sin(t)sin(9t)’)%图例text(2,0.5,’y=sin(t)sin(9t)’)%文字说明6着色、明暗、灯光、材质处理(仅对三维图形使用)colomap,shading,light,material7视点、三度(横、纵、高)比(仅对三维图形使用)view,aspect8图形的精细操作(图柄操作):利用对象属性值设置利用图形窗工具条进行get,set1用图形表示连续调制波形y=sin(t)sin(9t),过零点及其包络线,如下图所示。考查知识点——二维曲线的绘制——plot、多次叠绘——holdont=(0:pi/100:pi)';%长度为101的时间采样列向量y1=sin(t)*[1,-1];%包络线函数值,是(101x2)的矩阵y2=sin(t).*sin(9*t);%长度为101的调制波列向量t3=pi*(0:9)/9;%过零点的横坐标y3=sin(t3).*sin(9*t3);plot(t,y1,'r:',t,y2,'b',t3,y3,'bo')axis([0,pi,-1,1])%控制轴的范围00.511.522.53-1-0.8-0.6-0.4-0.200.20.40.60.812、画出所表示的三维曲面、网线图。的取值范围是。如下图所示。考查知识点——三维曲面、网线的绘制,子图的划分【法一】数据可视化第一步:准备绘图数据——最终得到x,y,z的坐标矩阵clear;clf;x=linspace(-8,8,30);%产生坐标向量y=x;%产生坐标向量[X,Y]=meshgrid(x,y);%由坐标向量产生坐标矩阵——meshgridZ=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2);%将X、Y代入函数中计算Y,——数组运算第二步:指明三维曲面绘图位置subplot(1,2,1);第三步:调用三维曲面绘图指令——surf绘图surf(X,Y,Z)第二步:指明三维网线绘图位置subplot(1,2,2);第三步:调用三维网线绘图指令——mesh绘图mesh(X,Y,Z)3、分别绘制上题中三维曲面的镂空图和切面图。镂空图要求将z>0.6部分镂空,而切面图要求将|x|>6或|y|>6部分切平。如下图所示。考查知识点——三维曲面、网线的绘制,子图的划分、三维曲面的镂空、裁切处理可利用利用“非数”NaN,对图形进行剪切处理如果为了看清图形而需要表现切面,那么应该把被切部分强制为零。x=linspace(-8,8,30);y=x;[X,Y]=meshgrid(x,y);Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2);subplot(2,1,1);surf(X,Y,Z);shadinginterpZ1=Z;Z2=Z;i1=find(Z>0.6);i2=find(abs(X)>6|abs(Y)>6);Z1(i1)=nan;Z2(i2)=0;subplot(2,2,3);surf(X,Y,Z1);shadinginterpsubplot(2,2,4);surf(X,Y,Z2);shadinginterp4、绘制环面:(提示:着色方式选择插值方式,色图选择夏天,取消坐标轴)u=0:0.01*pi:2*pi;v=u;[U,V]=meshgrid(u,v);x=(1+cos(U)).*cos(V);y=(1+cos(U)).*sin(V);z=sin(U);surf(x,y,z)shadinginterpcolormap(summer)axisoff5、在同一图像上画一单位球面,和一半径为2的三维网线球,实现单位球面的透视效果。如下图所示。考查知识点——图形的透视hiddenoff透视被叠压的图形hiddenon消隐被叠压的图形[X0,Y0,Z0]=sphere(30);%产生单位球面的三维坐标X=2*X0;Y=2*Y0;Z=2*Z0;%产生半径为2的球面的三维坐标clf,surf(X0,Y0,Z0);%画单位球面shadinginterp%采用插补明暗处理holdon,mesh(X,Y,Z)holdoffhiddenoff%产生透视效果axisequal,axisoff%不显示坐标轴