Matlab图形功能简介Matlab具有强大的图形显示功能具体介绍:1、二维图形显示功能2、二维图形显示功能Matlab二维图形显示功能在线性坐标系中绘制二维数据——plot函数常用函数调用plot(x,y),其中x和y均为矢量x定义为x坐标的离散坐标矢量y定义为y方向上,关于x矢量的矢量计算结果Plot函数示例t=0:pi/100:2*pi;y=sin(t);plot(t,y)Plot函数示例自动调用不同颜色t=0:pi/100:2*pi;y=sin(t);plot(t,y)y2=sin(t-0.25);y3=sin(t-0.5);plot(t,y,t,y2,t,y3)指定线型线型:实线“-”点划线“-.”虚线“:”破折线“——”五角星形“p”六角星形“h”线型示例t=0:pi/100:2*pi;y=sin(t);plot(t,y)y2=sin(t-0.25);y3=sin(t-0.5);plot(t,y,'-',t,y2,'--',t,y3,':')线型示例plot(t,y,'-.',t,y2,'h',t,y3,'p')指定线型标记类型:圆圈“o”点“.”星号“*”叉号“x”加号“+”正方形“s”菱形“d”向下三角形“v”指定线型预定的颜色标识:青色“c”、紫色“m”黄色“y”、黑色“d”红色“r”、绿色“g”蓝色“b”、白色“w”指定线型绘制指定线型、标记符号、颜色的一般形式为:plot(x,y,’linestyle_maker_color’)如plot(x,y,’:squarey’)表示一条颜色为黄色的虚线,并在该虚线的每个数据点上均作上一个小的方块标记。指定线型示例plot(t,y,'-*r',t,y2,'--sg',t,y3,':ob')指定线型需要指出,参数字符串可以按任意顺序排列。即linestyle_maker_color的顺序可以互换。plot(x,y,’go-.’)同样可以绘制一条带有圆形标记的点划线。指定线条的颜色和大小LineWidth——以点数为单位指定线条宽度MarkerEdgeColor——指定标记符号的颜色(对封闭标记符号,该属性用于指定边界颜色)MarkerFaceColor——对封闭标记符号有效,用于指定其填充色。MarkerSize——以点数为单位指定标记符号的大小。指定线条的颜色和大小x=-pi:pi/10:pi;y=tan(sin(x))-sin(tan(x));plot(x,y,'--ro','LineWidth',2,...'MarkerEdgeColor','k',...'MarkerFaceColor','g',...'MarkerSize',10)图形叠加将hold指令设置为ON,则再次绘图时将不再清除已经绘制的图形。x=-pi:pi/10:pi;y=tan(sin(x))-sin(tan(x));plot(x,y,'--ro','LineWidth',2,...'MarkerEdgeColor','k',...'MarkerFaceColor','g',...'MarkerSize',10)holdont=0:pi/100:2*pi;y=sin(t);plot(t,y)离散数据点的绘制只绘制表示数据的点,而不将其连成完整的线条。做法:忽略线型属性。x=0:pi/15:4*pi;y=exp(2*cos(x));plot(x,y,'rx')离散数据点的绘制当然也可以同时绘制数据点和连接这些数据点的线条。x=0:pi/15:4*pi;y=exp(2*cos(x));plot(x,y,'-r',x,y,'ok')黑白图形的绘制考虑到多数打印机是黑白的,通过线型和标记(而不是颜色)符号来区分不同线条。x=0:pi/15:4*pi;y1=exp(2*cos(x));y2=exp(2*sin(x));plot(x,y1,'-*k',x,y2,'-.ok')矩阵数据的绘制如果调用plot来绘制一个矩阵,则MATLAB将该矩阵的每一列绘制成一条线,其横坐标为行标1:m。Z=peaks;plot(Z)三维曲线图的绘制MATLAB的三维绘图函数主要是plot3函数调用方式plot3(x,y,z)将在三维空间产生一条曲线,线上的点的坐标分别为x,y,z的相应元素。t=0:pi/50:10*pi;plot3(sin(t),cos(t),t)axissquaregridon三维曲线图的绘制如果plot3函数的参数为3个相同大小的矩阵,则绘制这些矩阵的三维曲线。[X,Y]=meshgrid(-2:0.1:2);Z=X.*exp(-X.^2-Y.^2);plot3(X,Y,Z)gridon绘图的窗口创建新增绘图窗口:figurefigure(1)为创建窗口1,figure(2)即窗口2…在同一窗口中绘制多个图形subplotsubplot(2,1,2),即该窗口有2行1列,该指令为绘制第一列第二行的图形。绘图的窗口创建figure[X,Y]=meshgrid(-2:0.1:2);Z=X.*exp(-X.^2-Y.^2);subplot(2,1,1)plot3(X,Y,Z)gridonZ=peaks;subplot(2,1,2)plot(Z)坐标轴标签和图形注释Z=peaks;plot(Z)xlabel(‘XAxis’)ylabel(‘YAxis’)zlabel(‘FunctionValue’)title(‘Peaks’)创建三维MATLAB图形常用网格和表面图形的绘制1、mesh(Z)创建一个彩色的、带有线框的表面视图其中Z(i,j)定义了栅格(i,j)之上表面的高度。2、surf(Z)创建一个彩色的、由多个小面组成的表面视图每个小面是四角形的,有固定颜色,黑色边界线常用网格和表面图形的绘制[X,Y]=meshgrid(-8:.5:8);创建矩阵X和矩阵YR=sqrt(X.^2+Y.^2)+eps;加上eps是为了避免R为0.Z=sin(R)./R;figuremesh(Z)常用网格和表面图形的绘制[X,Y]=meshgrid(-8:.5:8);R=sqrt(X.^2+Y.^2)+eps;Z=sin(R)./R;surf(X,Y,Z)shadinginterp;%内插配色方案daspect([551])axistightview(50,30)camlightleft表面图形的透明处理默认情况,MATLAB将自动隐藏。表面图形都是实心的,即不透明的。可以用hiddenoff指令将图形表面作透明处理。[X,Y]=meshgrid(-8:.5:8);R=sqrt(X.^2+Y.^2)+eps;Z=sin(R)./R;figuremesh(Z);hiddenoff颜色映射表MATLAB中的colorbar函数用于显示当前的颜色映射表[x,y]=meshgrid([-2:.2:2]);Z=x.*exp(-x.^2-y.^2);surf(x,y,Z,Gradient(Z))colorbar表面曲率的颜色映射P=peaks(40);C=del2(P);surf(P,C)colormaphot另外还创建有其他颜色映射表,如:hsv、hot、cool、summer、gray等视点的变换MATLAB用view命令指定视点相对于坐标原点的水平转角和仰角。默认情况下:二维图形的水平转角为0度,仰角为90度。三维图形的水平转角为-37.5度,仰角为30度。视点的变换在默认的视点下绘制的图形:[X,Y]=meshgrid([-2:.25:2]);Z=X.*exp(-X.^2-Y.^2);surf(X,Y,Z)视点的变换view([1800])视点的变换view([6020])视点的变换view([60100])MATLAB中的灯光命令MATLAB中的灯光对象light函数可以创建灯光对象,其中:Color属性用于指定灯光对象的灯光颜色。Style属性用于指定光源类型:无限远(默认)或本地。Position属性用于指定光线方向(无限远光源)或光源位置(本地光源)。向图像场景添加灯光效果没有灯光的表面图形利用membrane函数绘制的表面图形:membrane添加灯光1:light(‘position’,[0-21])添加灯光2:light(‘position’,[101])添加灯光3:light(‘position’,[2210])无灯光效果1向图像场景添加灯光效果1向图像场景添加灯光效果2向图像场景添加灯光效果3无灯光效果2ezsurf('sin(sqrt(x^2+y^2))/sqrt(x^2+y^2)'),…[-60*pi,60*pi]向图像场景添加灯光效果ezsurf('sin(sqrt(x^2+y^2))/sqrt(x^2+y^2)'),[-6*pi,6*pi]view(0,75)shadinginterplightangle(-45,30)set(findobj(gca,'type','surface'),...'FaceLighting','phong',...'AmbientStrength',.3,'DiffuseStrength',.8,...'SpecularStrength',.9,'SpecularExponent',25,...'BackFaceLighting','unlit')