第一篇:全面总结matlab怎么做漂亮的图
全面总结:matlab怎么做漂亮的图(转载)2008-05-22 09:07 全面总结:matlab怎么做漂亮的图
转载于http://hi.baidu.com/hustliao/blog/item/ef0eadd9dbc8042910df9b65.html 在绘图命令中应该如何确定横坐标和纵坐标的标度尺寸(自己定范围)如何在一个坐标中绘制多条曲线,并用不同的颜色区别。希望得到答案,谢谢!!!!!!help plot help axis
axis('xlabel','ylabel')
a1=plot();hlod on a2=plot();legend([a1 a2],'图1名',‘图2名')hold off 还可以更多
x1=-pi:pi/12:pi;x2=-pi:pi/12:pi;y1=sin(x1);y2=cos(x2);plot(x1,y1,x2,y2);axis([-2*pi 2*pi-2 2]);xlabel('x');ylabel('y');title('sin(x)& cos(x)');MATLAB受到控制界广泛接受的一个重要原因是因为它提供了方便的绘图
功能.本章主要介绍2维图形对象的生成函数及图形控制函数的使用方法,还将 简单地介绍一些图形的修饰与标注函数及操作和控制MATLAB各种图形对象的 方法.第一节 图形窗口与坐标系 一.图形窗口
1.MATLAB在图形窗口中绘制或输出图形,因此图形窗口就像一张绘图纸.2.在MATLAB下,每一个图形窗口有唯一的一个序号h,称为该图形窗口的 句柄.MATLAB通过管理图形窗口的句柄来管理图形窗口;3.当前窗口句柄可以由MATLAB函数gcf获得;4.在任何时刻,只有唯一的一个窗口是当前的图形窗口(活跃窗口);figure(h)----将句柄为h的窗口设置为当前窗口;5.打开图形窗口的方法有三种: 1)调用绘图函数时自动打开;2)用File---New---Figure新建;3)figure命令打开,close命令关闭.在运行绘图程序前若已打开图形窗口,则绘图函数不再打开,而直接利用已 打开的图形窗口;若运行程序前已存在多个图形窗口,并且没有指定哪个窗 口为当前窗口时,则以最后使用过的窗口为当前窗口输出图形.6.窗口中的图形打印:用图形窗口的File菜单中的Print项.7.可以在图形窗口中设置图形对象的参数.具体方法是在图形窗口的Edit菜 单中选择Properties项,打开图形对象的参数设置窗口,可以设置对象的属 性.二.坐标系
1.一个图形必须有其定位系统,即坐标系;2.在一个图形窗口中可以有多个坐标系,但只有一个当前的坐标系;3.每个坐标系都有唯一的标识符,即句柄值;4.当前坐标系句柄可以由MATLAB函数gca获得;5.使某个句柄标识的坐标系成为当前坐标系,可用如下函数:axes(h)h为指 定坐标系句柄值.6.一些有关坐标轴的函数: 1)定义坐标范围:一般MATLAB自动定义坐标范围,如用户认为设定的不 合适,可用:axis([Xmin, Xmax, Ymin, Ymax])来重新设定;29 2)坐标轴控制:MATLAB的缺省方式是在绘图时,将所在的坐标系也画出 来,为隐去坐标系,可用axis off;axis on则显示坐标轴(缺省值).3)通常MATLAB的坐标系是长方形,长宽比例大约是4:3,为了得到一个 正方形的坐标系可用:axis square 4)坐标系横纵轴的比例是自动设置的,比例可能不一样,要得到相同比例 的坐标系,可用:axis equal 第二节 二维图形的绘制 一.plot函数
plot函数是最基本的绘图函数,其基本的调用格式为: 1.plot(y)------绘制向量y对应于其元素序数的二维曲线图,如果y为复数向量, 则绘制虚部对于实部的二维曲线图.例:绘制单矢量曲线图.y=[0 0.6 2.3 5 8.3 11.7 15 17.7 19.4 20];plot(y)由于y矢量有10个元素,x坐标自动定义为[1 2 3 4 5 6 7 8 9 10].图形为: 12345678910 0 2 4 6 8 10 12 14 16 18 20 2.plot(x,y)------绘制由x,y所确定的曲线.1)x,y是两组向量,且它们的长度相等,则plot(x,y)可以直观地绘出以x为 横坐标,y为纵坐标的图形.如:画正弦曲线: t=0:0.1:2*pi;y=sin(t);plot(t,y)2)当plot(x,y)中,x是向量,y是矩阵时,则绘制y矩阵中各行或列对应于 30 向量x的曲线.如果y阵中行的长度与x向量的 长度相同,则以y的行 数据作为一组绘图数据;如果y阵中列的长度与x向量的 长度相同,则 以y的列数据作为一组绘图数据;如果y阵中行,列均与x向量的长度相 同,则以y的每列数据作为一组绘图数据.例:下面的程序可同时绘出三条曲线.MATLAB在绘制多条曲线时,会 按照一定的规律自动变化每条曲线的的颜色.x=0:pi/50:2*pi;y(1,:)=sin(x);y(2,:)=0.6*sin(x);y(2,:)=0.3*sin(x);plot(x,y)或者还可以这样用: x=0:pi/50:2*pi;y=[ sin(x);0.6*sin(x);0.3*sin(x)];plot(x,y)01234567-1-0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1 3)如果x,y是同样大小的矩阵,则plot(x,y)绘出y中各列相应于x中各列的 图形.例:x(1,:)=0:pi/50:2*pi;x(2,:)=pi/4:pi/50:2*pi+pi/4;x(3,:)=pi/2:pi/50:2*pi+pi/2;y(1,:)=sin(x(1,:));y(2,:)=0.6*sin(x(2,:));y(3,:)=0.3*sin(x(3,:));plot(x,y)x=x';y=y';figure 31 plot(x,y)在这个例子中,x------3x101,y------3x101,所以第一个plot按列画出
101条曲线,每条3个点;而x'------101x3,y'------101x3,所以第二个plot 按列画出3条曲线,每条101个点.012345678-1-0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1 012345678-1-0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1 3.多组变量绘图:plot(x1, y1, 选项1, x2, y2, 选项2, ……)
上面的plot格式中,选项是指为了区分多条画出曲线的颜色,线型及标记点 而设定的曲线的属性.MATLAB在多组变量绘图时,可将曲线以不同的颜 色,不同的线型及标记点表示出来.这些选项如下表所示: 各种颜色属性选项
选 项 意 义 选 项 意 义 'r' 红色 'm' 粉红 'g' 绿色 'c' 青色 32 'b' 兰色 'w' 白色 'y' 黄色 'k' 黑色
各种线型属性选项
选 项 意 义 选 项 意 义 '-' 实线 '--' 虚线 ':' 点线 '-.' 点划线
各种标记点属性选项
选 项 意 义 选 项意 义
'.' 用点号绘制各数据点 '^' 用上三角绘制各数据点 '+' 用'+'号绘制各数据点 'v' 用下三角绘制各数据点 '*' 用'*'号绘制各数据点 '>' 用右三角绘制各数据点 '.' 用'.'号绘制各数据点 '<' 用左三角绘制各数据点
's'或squar 用正方形绘制各数据点'p' 用五角星绘制各数据点 'd'或diamond用菱形绘制各数据点 'h' 用六角星绘制各数据点
这些选项可以连在一起用,如:'-.g'表示绘制绿色的点划线,'g+'表示用绿 色的'+'号绘制曲线.注意:1)表示属性的符号必须放在同一个字符串中;2)可同时指定2~3个属性;3)与先后顺序无关;4)指定的属性中,同一种属性不能有两个以上.例:t=0:0.1:2*pi;y1=sin(t);y2=cos(t);y3=sin(t).*cos(t);plot(t,y1, '-r',t,y2, ':g',t,y3, '*b')该程序还可以按下面的方式写: t=0:0.1:2*pi;y1=sin(t);y2=cos(t);y3=sin(t).*cos(t);plot(t,y1, '-r')hold on plot(t,y2, ':g')plot(t,y3, '*b')hold off 注:在MATLAB中,如画图前已有打开的图形窗口,则再画图系统将自动 擦掉坐标系中已有的图形对象,但设置了hold on后,可以保持坐标系中已绘出 的图形.33 01234567-1-0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1 图(a)还可以进一步设置包括线的宽度(LineWidth),标记点的边缘颜色(MarkerEdgeColor),填充颜色(MarkerFaceColor)及标记点的大小(MarkerSize)等其它绘图属性.例:设置绘图线的线型,颜色,宽度,标记点的颜色及大小.t=0:pi/20:pi;y=sin(4*t).*sin(t)/2;plot(t,y,'-bs','LineWidth',2,...%设置线的宽度为2 'MarkerEdgeColor','k',...%设置标记点边缘颜色为黑色 'MarkerFaceColor','y',...%设置标记点填充颜色为黄色 'MarkerSize',10)%设置标记点的尺寸为10 绘出图形如下: 00.511.522.533.5-0.5-0.4-0.3-0.2-0.1 0 0.1 0.2 0.3 0.4 0.5 34 4.双Y轴绘图:plotyy()函数.其调用格式为: plotyy(x1,y1,x2,y2)------绘制由x1,y1和x2,y2确定的两组曲线,其中x1, y1的坐标轴在图形窗口的左侧,x2,y2的坐标轴在 图形窗口的右侧.Plotyy(x1,y1,x2,y2, 'function1','function2')------功能同上,function是指那些 绘图函数如:plot,semilogx, loglog等.例如:在一个图形窗口中绘制双Y轴曲线.x=0:0.3:12;y=exp(-0.3*x).*sin(x)+0.5;plotyy(x,y,x,y,'plot','stem')图形如下: 024681012 0 0.5 1 1.5 024681012 0 0.5 1 1.5 stem:绘制stem形式的曲线(上端带圈的竖线).绘图结果:两条图线自动用不同的颜色区分,两个坐标的颜色与图线的颜 色相对应,左边的Y轴坐标对应的是plot形式的曲线,右边的Y坐标对应的 是stem形式的曲线.二.对数坐标图绘制函数: 在对数坐标图的绘制中,有三种绘图函数:semilogx,semilogy和loglog函 数.1)semilogx()------绘制以X轴为对数坐标轴的对数坐标图.其调用格式为:semilogx(x,y,'属性选项')其中属性选项同plot函数.该函数只对横坐标进行对数变换,纵坐标仍为线性坐标.2)semilogy()------绘制以Y轴为对数坐标轴的对数坐标图.其调用格式为:semilogy(x,y,'属性选项')该函数只对纵坐标进行对数变换,横坐标仍为线性坐标.35 3)loglog()------绘制X,Y轴均为对数坐标轴的图形.其调用格式为:loglog(x,y,'属性选项')该函数分别对横,纵坐标都进行对数变换.例:x=0:0.1:6*pi;y=cos(x/3)+1/9;subplot(221), semilogx(x,y);subplot(222), semilogy(x,y);subplot(223), loglog(x,y);4)MATLAB还提供了一个实用的函数:logspace()函数,可按对数等间距地分 布来产生一个向量,其调用格式为: x=logspace(x1,x2,n)这里,x1表示向量的起点;x2表示向量的终点;n表示需要产生向量点的 个数(一般可以不给出,采用默认值50).在控制系统分析中一般采用这种方法来构成频率向量w.关于它的应用后面 还要讲到.三.极坐标图的绘制函数: 绘极坐标图可用polar()函数.其调用格式如下: polar(theta, rho,'属性选项')------theta:角度向量,rho:幅值向量,属性 内容与plot函数基本一致.例如:极坐标模型为:3145/)/)cos((+ =θρ, ],[πθ80∈则绘出极坐标图 的程序为:theta=0:0.1:8*pi;p=cos((5*theta)/4)+1/3;polar(theta,p)0.5 1 1.5 30 210 60 240 90 270 120 300 150 330 1800 四.绘制多个子图:subplot()函数
MATLAB允许在一个图形窗口上绘制多个子图(如对于多变量系统的输 出),允许将窗口分成nxm个部分.分割图形窗口用subplot函数来实现,其调用格式为: subplot(n,m,k)或subplot(nmk)------n,m分别表示将窗口分割的行数和列数, 36 k表示要画图部分的代号,表示第几个图形,nmk三个数可以连写,中间不用 符号分开.例如:将窗口划分成2x2=4个部分,可以这样写: subplot(2,2,1),plot(……)subplot(2,2,2),…… subplot(2,2,3),…… subplot(2,2,4),…… 221 222 223 224 注:subplot函数没有画图功能,只是将窗口分割.第三节 图形的修饰与标注
MATLAB提供了一些特殊的函数修饰画出的图形,这些函数如下: 1)坐标轴的标题:title函数
其调用格式为:title('字符串')------字符串可以写中文 如:title('My own plot')2)坐标轴的说明:xlabel和ylabel函数 格式:xlabel('字符串')ylabel('字符串')如:xlabel('This is my X axis')ylabel('My Y axis')3)图形说明文字:text和gtext函数
A.text函数:按指定位置在坐标系中写出说明文字.格式为:text(x1, y1, '字符串', '选项')x1,y1为指定点的坐标;'字符串'为要标注的文字;'选项'决定x1,y1 的坐标单位,如没有选项,则x1,y1的坐标单位和图中一致;如选项为'sc', 则x1,y1表示规范化窗口的相对坐标,其范围为0到1.(1,1)规范化窗口(0,0)37 如:text(1,2, '正弦曲线')B.gtext函数:按照鼠标点按位置写出说明文字.格式为:gtext('字符串')当调用这个函数时,在图形窗口中出现一个随鼠标移动的大十字交叉线, 移动鼠标将十字线的交叉点移动到适当的位置,点击鼠标左键,gtext参数中 的字符串就标注在该位置上.4)给图形加网格:grid函数 在调用时直接写grid即可.上面的函数的应用实例: 例:在图形中加注坐标轴标识和标题及在图形中的任意位置加入文本.t=0:pi/100:2*pi;y=sin(t);plot(t,y),grid, axis([0 2*pi-1 1])xlabel('0 leq itt rm leq pi','FontSize',16)ylabel('sin(t)','FontSize',20)title('正弦函数图形','FontName','隶书' ,'FontSize',20)text(pi,sin(pi),'leftarrowsin(t)=0','FontSize',16)text(3*pi/4,sin(3*pi/4),'leftarrowsin(t)=0.707', 'FontSize',16)text(5*pi/4,sin(5*pi/4),' sin(t)=-0.707rightarrow',...'FontSize',16,'HorizontalAlignment','right')画出的图形为: 0246-1-0.5 0 0.5 1 0 ≤ t ≤ π sin(t)正弦函数图形 ←sin(t)=0
←sin(t)=0.707 sin(t)=-0.707→ 5)在图形中添加图例框:
legend函数
其调用格式为: A.legend('字符串1', '字符串2', ……)------以字符串1,字符串2…… 作 38 为图形标注的图例.B.legend('字符串1', '字符串2', ……, pos)------pos指定图例框显示的位置.图例框被预定了6个显示位置: 0------取最佳位置;1------右上角(缺省值);2------左上角;3------左下角;4------右下角;-1------图的右侧.例:在图形中添加图例.x=0:pi/10:2*pi;y1=sin(x);y2=0.6*sin(x);y3=0.3*sin(x);plot(x,y1,x,y2,'-o',x,y3,'-*')legend('曲线1','曲线2','曲线3')绘出图形如下: 02468-1-0.5 0 0.5 1 曲线1 曲线2 曲线3 6)用鼠标点选屏幕上的点:ginput函数 格式为:[x, y, button]=ginput(n)其中:n为所选择点的个数;x,y均为向量,x为所选n个点的横坐标;y为所选n个点的纵坐标.button为n维向量,是所选n个点所对应的鼠标键的标号: 1------左键;2------中键;3------右键.可用不同的鼠标键来选点,以区别所选的点.此语句可以放在绘图语句之后,它可在绘出的图形上操作,选择你所感 兴趣的点,如峰值点,达到稳态值的点等,给出点的坐标,可求出系统的 性能指标.39 第四节 MATLAB下图形对象的修改
MATLAB图形对象是指图形系统中最基本,最底层的单元,这些对象包括: 屏幕(Root),图形窗口(Figures),坐标轴(Axes),控件(Uicontrol),菜单(Uimenu), 线(Lines),块(Patches),面(Surface),图像(Images),文本(Text)等等.根据各对象的相互关系,可以构成如下所示的树状层次: Root Figures Axes Uicontrol Uimenu Uicontextmenu(对象菜单)Images Line Patch Surface Text 对各种图形对象进行修改和控制,要使用MATLAB的图形对象句柄
(Handle).在MATLAB中,每个图形对象创立时,就被赋予了唯一的标识,这 个标识就是该对象的句柄.句柄的值可以是一个数,也可以是一个矢量.如每个计算机的根对象只有
一个,它的句柄总是0,图形窗口的句柄总是正整数,它标识了图形窗口的序号 等.利用句柄可以操纵一个已经存在的图形对象的属性,特别是对指定图形对 象句柄的操作不会影响同时存在的其它图形对象,这一点是非常重要的.一.对图形对象的修改可以用下面函数: 1)set函数:用于设置句柄所指的图形对象的属性.Set函数的格式为: set(句柄, 属性名1, 属性值1, 属性名2, 属性值2, ……)例:h=plot(x,y)set(h, 'Color', [1,0,0])------将句柄所指曲线的颜色设为红色.2)get函数:获取指定句柄的图形对象指定属性的当前值.格式为:get(句柄, '属性名')如: get(gca, 'Xcolor')------获得X轴的当前颜色属性值.执行后可返回X轴的当前颜色属性值[0,0,0](黑色).3)如果没有设置句柄,则可以使用下列函数获得: gcf:获得当前图形窗口的句柄;gca:获得当前坐标轴对象的句柄;gco:获得当前对象的句柄.如: A.要对图形窗口的底色进行修改,可用: set(gcf, 'Color', [1,1,1])------将图形窗口底色设为白色 B.要把当前X轴的颜色改为绿色,可用: set(gca, 'Xcolor', [0,1,0])40 C.还可对坐标轴的显示刻度进行定义: t=-pi:pi/20:pi;y=sin(t);plot(t,y)set(gca,'xtick',[-pi:pi/2:pi],'xticklabel',['-pi','-pi/2','0','pi/2','pi'])-pi-pi/20pi/2pi-1-0.5 0 0.5 1 本例中用'xtick'属性设置x轴刻度的位置(从-pi~pi,间隔pi/2,共设置
5个点),用'xticklabel'来指定刻度的值,由于通常习惯于用角度度量三角函 数,因此重新设置['-pi','-pi/2','0','pi/2','pi']5个刻度值.二.一些常用的属性如下:
1)Box属性:决定图形坐标轴是否为方框形式,选项为'on'(有方框), 'off'(无方框);2)'ColorOrder'属性:设置多条曲线的颜色顺序,默认值为: [1 1 0;1 0 1;0 1 1;1 0 0;0 1 0;0 0 1] 黄色 粉色 天蓝 红色 绿色 兰色
颜色向量还有:[1 1 1]------白色;[0 0 0]------黑色.3)坐标轴方向属性:'Xdir','Ydir','Zdir',其选项为: 'normal'------正常 'reverse'------反向
4)坐标轴颜色和线型属性:'Xcolor','Ycolor','Zcolor'------轴颜色, 值为颜色向量
如何在画好曲线后 再在图上标刻度啊???
就是想在一些特定的点边上标上一串30.60.90~7200 递增的数据] 共有96个点要标!
难道只能用text一个一个的画吗?? 求求大家了 帮帮忙忙吧
循环语句加上text,不行吗?
url='http://hiphotos.baidu.com/baidu/pic/item/826405f4715fb763dcc47472.jpg';im = imread(url);imshow(im)
然后输入:
text(100,100,'o ','Color','red');matlab,用imread读入一个图片,我想在图上的一些坐标点上做标记。比如把图上坐标值为(100,100)的点用红圈标注出来。具体用什么命令语句实现呢
用subplot在一个图象窗口中作下列四条曲线,并为每幅图形加上标 题:
1)概率曲线y=e^(-x^2)x 2)四叶玫瑰线 ρ=sin2θ 3)叶形线x=3t/(1+t^3)y=3t^2/(1+t^3)4)摆线x=a(t-sint), y=a(1-cost), t∈[0,2π]。
第二个
在同一坐标内,分别用不同线型和颜色绘制曲线y1=0.2e-0.5xcos(4PIx)和y1=2e-0.5xcos(PIx),标记两曲线交叉点。
PI是圆周率
很急,谢谢
clc;clear subplot(2,2,1)ezplot('exp(-x^2)')subplot(2,2,2)ezpolar('sin(2*t)')subplot(2,2,3)t=0:pi/100:2*pi;x=3*t./(1+t.^3);y=3*t.^2./(1+t.^3);plot(x,y)subplot(2,2,4)a=2;x1=a*(t-sin(t));y1=a*(1-cos(t));plot(x1,y1)
%[2] x=0:pi/500:2*pi;y1=0.2*exp(1)-0.5*x.*cos(4*pi*x);y2=2*exp(1)-0.5*x.*cos(pi*x);figure plot(x,[y1;y2])
'LineWidth'------轴的线宽,值为数字 'Xgrid','Ygrid','Zgrid'------坐标轴上是 否加网格,值为'on'和'off'.5)坐标轴的标尺属性:'Xtick','Ytick','Ztick'------标度的位置,值为 向量
'Xticklabel','Yticklabel','Zticklabel'------轴上 标度的符号,它的值为与标度位置向量同样大 小(向量个数相同)的向量.5)字体设置属性:'FontAngle'------设置字体角度,选项为: 41 'normal'------正常;'italic'------斜体;'oblique'------倾斜;'FontName'------字体名称;'FontSize'------字号大小
'FontWeight'------字体的轻重,选项为:'light', 'normal','bold' 42
第二篇:matlab总结
班级: 学号: 姓名:
Matlab学习综述
MATLAB是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB将高性能的数值计算和强大的数据可视化功能集成在一起,并提供了大量的内置函数,从而被广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作,而且利用MATLAB产品的开放式结构,可以非常容易地对MATLAB的功能进行扩充。
MATLAB产品由若干个模块组成,不同的模块完成不同的功能,其中主要的核心模块有MATLAB、MATLAB Toolboxex、MATLAB Compiler Simulink、Simulink Blocksets、Real-time Workshop(RTW)Stateflow。这些产品大体上可以分为以MATLAB为基础的产品和以Simulink为基础的产品两大分支。其中,MATLAB是MATLAB产品家族的基础,任何其他MATLAB产品产品都以这个模块为基础。MATLAB的桌面应用程序开发工具是以MATLAB Compiler为核心的一组编译工具。Simulink是基于MATLAB的框图设计环境,可以用来对各种动态系统进行建模,分析和仿真,它的建模范围广泛,可以针对任何能够用数字来描述的系统进行建模。
一种完整的计算机应用语言应该提供对数据的描述和对数据的操作。在M语言中,最常用的数据类型表现手段和形式就是变量和常量,由于MATLAB软件自身的特点,它是一种以数值计算为基础的软件,因此M语言的基本处理单位是数值矩阵或者数值向量,在M语言中统一将矩阵或者向量称之为数组,因此掌握一些基本的矩阵、向量和数组操作的基本知识就成为了掌握MATLAB软件的基础。变量和常量是编程语言中类型的表现手段和形式,掌握变量和常量的概念也是掌握M语言编程的基础。所谓变量,就是指在程序运行中需要改变数值的量,每一个变量都具有一个名字,变量将在内存中占据一定的空间,以在程序运行的过程中保存其数值,对变量的命名有相应的要求:变量必须以字母开头,后面可以是字母、数字或者下划线之间的组合。所谓常量就是在程序运行的过程中不需要改变数值的量。
MATLAB专门以矩阵作为基本的运算单位,首先要掌握向量、矩阵、索引和多维数组的概念,以及在MATLAB环境下创建向量、矩阵和多维数组的方法,以及操作矩阵和多维数值的函数的使用方法。
目前的MATLAB版本中不仅有多达十几种的基本数据类型。在不同的专业工具箱中还有特殊的数据类型,并且MATLAB还支持面向对象的编程技术,支持用户自定义的数据类型。获取MATLAB的数据类型可以在MATLAB命令行窗体中键入help datatypes。MATLAB的数据类型包括基本的数值类型,逻辑类型数据、元胞数值、结构和字符串等,需要指出一点,MATLAB的基本数据是双精度数据类型和字符类型。MATLAB提供了完整的编写应用程序的功能,这种能力被称为M语言的高级语言来实现。这种语言是一种解释性语言,利用该语言编写的代码仅能被MATLAB接受,被MATLAB解释执行。其实,一个M语言文件就是由若干MATLAB的命令组合在一起构成的,和C语言类似。M语言文件都是标准的纯文本格式的文件,其文件的扩展名为.m。MATLAB的函数主要有两类,一类被称为内建函数,这类函数是由MATLAB的内核提供的,能够完成基本的运算,例如三角函数、矩阵运算函数等。另外一类函数就是利用高级语言开发的函数文件,这里的函数文件包括用C/FORTRAN语言开发的MEX函数文件,也包括了M函数文件。
M语言文件可以分为两类,其中一类是脚本文件,另一类是函数文件,脚本文件是最简单的一种M语言文件。所谓脚本文件就是由一系列的M语言文件指令和命令组成的纯文本格式的M文件,执行脚本文件时,文件中的指令或者命令按照出现在脚本文件中的顺序依次执行。脚本文件没有输入参数,也没有输出参数,脚本文件处理的数据或者变量必须在MATLAB的公共工作空间中,脚本文件主要是由注视行和代码行组成。
函数文件是M文件最重要的组成部分,M语言函数文件能够接受用户的输入参数,并进行计算,然后将计算结果作为函数的返回值返回给调用者,M函数文件和脚本文件不同,函数文件不仅有自己特殊的文件格式,而且不同的函数还分别具有自己的工作空间,函数文件的输/输出参数不同,这些输入/输出参数在定义的时候不需要指出变量的类型,因为MATLAB默认这些参数都使用双精度类型,这样可以简化程序的编写。M语言的函数文件不仅可以有一个输入参数和一个返回值,还可以为M语言函数文件定义多个输入参数和多个输出参数,同一个M函数文件中可以包含多个函数。如果在同一个M函数文件中包含了多个函数,那么将出现在文件中的第一个M函数称为主函数,其余的函数称为子函数。
经过这么一段时间的学习,对MATLAB有了初步的认识。但是关于它还有很多知识我们所不知道,还有待进一步的学习。以上内容是我对这学期所学课程的总结,可能有些地方总结的不够到位,因为有些地方学习的不够深入,所以,以后要更加努力,在MATLAB的学习上多花一些时间,为以后的学习和工作打下基础。
第三篇:MATLAB总结
目录
一、Matlab相关说明.....................................................................2
二、Matlab操作注意事项..............................................................2
三、Matlab常用代码(图像处理相关)......................................5
四、Matlab常用快捷键.................................................................7
五、Matlab学习心得.....................................................................8
一、Matlab相关说明
Matlab是“Matrix Laboratory”的缩写,意为“矩阵实验室”。MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
我所使用的Matlab版本是2012a,下文所涉及到图片、专业术语等都是以此版本为基础。
二、Matlab操作注意事项
1.打开并运行一个现存的m文件且这个m文件运行时需用到同一级文件夹中的其他文件,会出现如下提示框:
选择变更文件夹,将当前文件夹变更为这个m文件所在的文件夹。
2.不小心点错或关闭了各种小窗口,将Matlab恢复成默认布局
点击桌面—桌面布局—默认
3.查看某个函数的用法
在命令窗口输入该变量的名称,回车即可。
4.查找某个函数的用法
在命令窗口输入help+函数的名称,回车后会自动显示该函数的相关信息。
5.运行文件后报错 如下图所示,命令窗口中报错的第一段是错误的原因,后面几段会显示发生错误的文件夹以及在该文件夹中的位置。
点击文件的名称,会跳转出一个提示框,上面显示了该文件的具体实现功能,如下图所示。点击文件名后面的行标号,可以直接跳转到发生错误的那一行。
6.如何编辑界面?
修改如图所示的fig文件
1.新建一个GUI文件
2.选择打开现存的GUI文件,点击Open,就可以对当前界面进行编辑了。
7.如何将MAtlab中默认的current folder修改为自己想要的路径,每次启动后都默认是自己 设定的这个路径?
>>右键matlab 快捷方式,属性-快捷方式-起始位置 填入你自己的工作目录。8.把图复制到WORD文件的方法:电机EDIT—>Copy Figure—>Ctrl+V 9.输入时,标点必须是英文状态下的
10.大多数情况下,matlab对空格不予处理
11.小括号代表运算级别,中括号用于生成矩阵,大括号用于构成单元数组
12.分号;的作用:不显示运算结果,但对图形窗口不起作用。分号也用于区分行,13.逗号,的作用:函数参数分隔符,也用于区分行,显示运算结果,当然不加标点也显示运算结果
14.冒号:多用于数组
15.续行号...不能放在等号后面使用,不能放在变量名中间使用,起作用时默认显蓝色 16.双引号'string'是字符串的标识符 17.感叹号!用于调用操作系统运算
18.百分号%是注释号,百分号后面直到行末的语句matlab跳过执行.另外还有一个块注释,即对多行一次注释,会使用到,格式为(注意%{ 和%}都要单独成行)%{ %} 19.矩阵中用圆括号表示下标,单元数组用大括号表示下标
20.对变量名的基本要求:区分大小写,不超过63个字符,以字母开头,只能是字母,数字和下划线
三、Matlab常用代码(图像处理相关)
1.创建一个文件夹 mkdir('D:myData');2.将图片保存到指定的文件夹
image_source=strcat('result',num2str(loop),'.jpg');imwrite(F.cdata,image_source);3.将电影转成图片序列
fnum=size(mov,2);%读取电影的祯数 for i=1:fnum strtemp=strcat('C:UsersAdministratorDesktopparticalfiltermyself粒子滤波',int2str(i),'.jpg');%将每祯转成jpg的图片 imwrite(mov(i).cdata,strtemp,'jpg');end
4、模拟噪声生成函数和预定义滤波器
① imnoise:用于对图像生成模拟噪声,如:
i=imread('104_8.tif');j=imnoise(i,'gaussian',0,0.02);%模拟高斯噪声 ② fspecial:用于产生预定义滤波器,如: h=fspecial('sobel');%sobel水平边缘增强滤波器 h=fspecial('gaussian');%高斯低通滤波器 h=fspecial('laplacian');%拉普拉斯滤波器
h=fspecial('log');%高斯拉普拉斯(LoG)滤波器 h=fspecial('average');%均值滤波器
5、图像文件I/O函数命令
imfinfo 返回图形图像文件信息
语法:info=imfinfo(filename,fmt)info=imfinfo(filename)imread 从图像文件中读取(载入)图像
语法:A=imread(filename,fmt)[X,map]=imread(filename,fmt)[...]=imread(filename)[...]=imread(URL,...)[...]=imread(...,idx)(CUR,ICO,and TIFF only)[...]=imread(...,'frames',idx)(GIF only)[...]=imread(...,ref)(HDF only)[...]=imread(...,'BackgroundColor',BG)(PNG only)[A,map,alpha] =imread(...)(ICO,CUR,PNG only)imwrite 把图像写入(保存)图像文件中
语法:imwrite(A,filename,fmt)imwrite(X,map,filename,fmt)imwrite(...,filename)imwite(...,Param1,Val1,Param2,Val2...)imcrop 剪切图像
语法:I2=imcrop(I)X2=imcrop(X,map)RGB2=imcrop(RGB)I2=imcrop(I,rect)X2=imcrop(RGB,rect)[...]=imcrop(x,y,...)[A,rect]=imcrop(...)[x,y,A,rect]=imcrop(...)
6.impixel 确定像素颜色值
语法:P=impixel(I)P=impixel(X,map)P=impixel(RGB)P=impixel(I,c,r)P=impixel(X,map,c,r)P=impixel(RGB,c,r)[c,r,P]=impixel(...)P=impixel(x,y,I,xi,yi)P=impixel(x,y,RGB,xi,yi)P=impixel(x,y,X,map,xi,yi)[xi,yi,P]=impixel(x,y,...)
7.二进制图像操作函数
applylut 在二进制图像中利用lookup表进行行边沿操作 语法:A=applylut(BW,LUT)bwarea 计算二进制图像对象的面积 语法:total=bwarea(BW)bweuler 计算二进制图像的欧拉数 语法:eul=bweuler(BW)
8.颜色空间转换函数
hsv2rgb 转换HSV值为RGB颜色空间:M=hsv2rgb(H)ntsc2rgb 转换NTSC值为RGB颜色空间:rgbmap=ntsc2rgb(yiqmap)RGB=ntsc2rgb(YIQ)rgb2hsv 转换RGB值为HSV颜色空间:cmap=rgb2hsv(M)rgb2ntsc 转换RGB值为NTSC颜色空间:yiqmap=rgb2ntsc(rgbmap)YIQ=rgb2ntsc(RGB)rgb2ycbcr 转换RGB值为YCbCr颜色空间:ycbcrmap=rgb2ycbcr(rgbmap)YCBCR=rgb2ycbcr(RGB)ycbcr2rgb 转化YCbCr值为RGB颜色空间:rgbmap=ycbcr2rgb(ycbcrmap)RGB=ycbcr2rgb(YCBCR)
9.类型转换函数
im2bw 转换图像为二进制图像
语法:BW=im2bw(I,level)BW=im2bw(X,map,level)BW=im2bw(RGB,level)im2double 转换图像矩阵为双精度型
语法:I2=im2double(I1)RGB2=im2double(RGB1)I=im2double(BW)X2=im2double(X1,'indexed')double 转换数据为双精度型 语法:double(X)unit8、unit16转换数据为8位、16位无符号整型: i=unit8(x)i=unit16(x)im2unit8 转换图像阵列为8位无符号整型
语法:I2=im2unit8(I1)RGB2=im2unit8(RGB1)I=im2unit8(BW)X2=im2unit8(X1,'indexed')im2unit16 转换图像阵列为16位无符号整型
语法:I2=im2unit16(I1)RGB2=im2unit16(RGB1)I=im2unit16(BW)X2=im2unit16(X1,'indexed')
四、Matlab常用快捷键
1.在命令窗口(Command Window)中:
1)【上、下键】――切换到之前、之后的命令,可以重复按多次来达到你想要的命令
2)clc――清除命令窗口显示的语句,此命令并不清空当前工作区的变量,仅仅是把屏幕上显示出来的语句清除掉
3)clear――这个才是清空当前工作区的变量命令,常用语句clear all来完成 4)【Tab】键――在command窗口,输入一个命令的前几个字符,然后按tab键,会弹出前面含这几个字符的所有命令,找到你要的命令,回车,就可以自动完成。目前讨论结果是:matlab6.5版本中,如果候选命令超过100个,则不显示。而在matlab7以后版本中,则没有这个限制,均可正常提示 5)【Ctrl+C】(或【Ctrl+Break】)――在matlab程序运行过程中,可能由于程序编写的失误,导致程序不停的运行,在命令窗口输入“Ctrl+C”可以将运行的程序停下来,而不需要将整个Matlab程序关掉。不过进行此操作的前提是能够激活切换到命令窗口才行。6)edit+函数名 查看或编辑源文件 7)who 显示当前变量名列表 8)whos 显示变量详细列表
9)which+函数名 证实该函数是否在当前路径 10)what 列出当前路径的所有matlab文件 11)load 加载外部文件 12)save 保存文件到外部 13)20.matlab的帮助函数: 14)help 15)help+函数名或help+函数类名 精确查询 16)helpwin 打开帮助窗口 17)helpwin+函数名 精确查询 18)helpdesk 打开帮助窗口 19)doc 打开帮助窗口
20)doc+函数名 打开帮助窗口,精确查询
21)lookfor+关键字 这个是matlab中的谷歌,模糊查询
2.在编辑器(Editor)中: 1)【Tab】(或【Ctrl+]】)――增加缩进(对多行有效)2)3)4)5)6)【Ctrl+[】--减少缩进(对多行有效)
【Ctrl+I】--自动缩进(即自动排版,对多行有效)【Ctrl+R】――注释(对多行有效)【Ctrl+T】――去掉注释(对多行有效)
【Ctrl+B】――括号配对检查(对版本6.5有效,但版本7.0无效,不知道是取消了还是换了另外的快捷键,请大牛们指点,其他版本没有测试过)7)【F12】――设置或取消断点 8)【F5】――运行程序
五、Matlab学习心得
接触Matlab一个多月,从刚开始连最基本的操作都不会,到现在能够熟练地运用Matlab解决问题。虽然现在学到的也只是皮毛而已,离精通还相差甚远,但至少为以后研究生期间的学习打下了良好的基础。下面我就简单的谈一下这一个月来的学习感想。
首先,想要学好Matlab必须有一定数学基础。Matlab软件是与高等数学,计算机科学相结合的软件。所以,当你学习Matlab时,你也得会一定的数学。你要尽量多的熟悉matlab自带的函数,及其作用,因为matlab的自带函数特别多,基本上能够满足一般的数据和矩阵的计算,所以基本上不用你自己编函数。这一点对你的程序非常有帮助,可以使你的程序简单,运行效率高,可以节省很多时间。
其次,要注重基础知识于实际操作结合。你把基本的知识看过之后,就需要找一个实际的程序来动手编一下,不要等所有的知识都学好之后再去编程,你要在编程的过程中学习,程序需要什么知识再去补充。在遇到问题时,不要光看别人如果解决,也不要光想怎么解决,自己坐下来,动手自己解决一下,那你就会把不是你的知识变成自己的知识。
最后,也是最重要的一点就是坚持。MATLAB涉及的领域太多,每个领域里面都缺乏足够的专家分布在你周围。那么我们很难有机会接触到真正的高手,对我们的技术细节一一指点。在遇到实际问题时,就只能靠自己去摸索。常常是再坚持一两个小时,就能够解决你的问题。最大的成就感,就在付出了极大的心血和耐心,才取得一个艰难的小胜利。
第四篇:Matlab学习总结
学Matlab有感
姓名:王鸿栋 学号:20090286 班级: 03310901 我对于计算机编程接触的比较晚,也没有特别大的兴趣。不过对于Matlab这门课我还是很喜欢的。一是这个语言可以变出程序绘出函数的图形,这就使得这个语言可以被“看见”,感觉比较亲切,不是那么缥缈空虚的东西。二是这个语言却是很“友好”,很人性化,像我刚学习这门语言,还什么都不会编的时候,我随便打出了一句help,界面上就输出了帮助文档。三是这个语言的强大的功能,1.3G不是白给的,很多C、java里需要用循环语句来完成的,在Matlab里只需要一句话就可以搞定了,刚上这门课时老师说C一堂课讲授的内容Matlab一句话就可以搞定了,看来不是假的。四是这门语言确实很有用,信号与系统课上学的很多内容都可以用Matlab来仿真,另外这门语言在很多其他的领域也都很有用,所以,我打算好好学习这门语言。
第一次交作业时我还只交上了两道题,那时候对这门语言接触得还比较少,但是就在交作业的那天我打算好好学习这门语言,而且在写作业的时候我确实喜欢上了这门语言。虽然第一次由于时间仓促只交上了两道题,可是那都是我自己写的,我觉得只有这样才能学到东西。第二天,在别人都在做第二次作业的时候,我却仍然在做第一次作业,我打算把第一次的作业完整的写一遍,即使这对我的分数一点帮助也没有。第二次作业我提前好几天就写完了,虽然没有完成全部的题目。我把第一第二次作业一起交了上去,我希望老师能帮我看一看。
上面只是对这门课程的一些怀念,课程已经结束了,不过我会继续学习这门语言的。下面就针对这次作业的要求,给这门课提一些看法,毕竟这才是正题。MATLAB 产品族可以用来进行以下各种工作:
● 数值分析
● 数值和符号计算
● 工程与科学绘图
● 控制系统的设计与仿真
● 数字图像处理
● 数字信号处理
● 通讯系统设计与仿真
● 财务与金融工程
MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。说实在的想完全掌握全部的基本上是不可能的,就像dsp一样,应用的范围很广,想一口吃可能不行,所以要结合专业来学习才好!
对于我们这些学习了C语言的学生,编程基本的语法学习起来很快的,和c语言很类似,而且是支持c语言函数的,或者说函数就是用c语言编的,完全是解释性的语言,像打草稿一样,可以一句句的编译,看结果的。
等我们编到基本的熟悉之后就可以编辑函数了,-------这个其实用的不多,为了应用的话,老师建议开始编写M文件,也就是把程序都写在m文件里面,然后编译,调试,根据错误信息来调试。
至于和专业相关的方面就说说自动化方面吧!和控制理论,fft,用的比较多,根轨迹,相平面,传递函数,拉普拉斯变换,奈氏曲线什么的,基本上都可以解决
03310901班
王鸿栋 20090286 对于授课方式,我觉得上课时老师是结合信号与系统来讲的,就是说课程的定位就是交给我们解决信号与系统方面问题的一个方法。我觉得Matlab功能远远不止于此。而且老师在课上讲程序都是一带而过,我觉得讲授的程序不必很多,一堂课只讲几个程序,但是对于每个程序,如果老师都能给我们进行分析,把这个程序将明白了,那么这堂课我们就能学到很多东西。而且这样讲课也不会使我们觉得枯燥。
对提高Matlab编程能力的方法,我想主要有以下三个: 1.查help 2.多上上论坛,搜索帖子、发帖子问人 3.阅读别人、特别是牛人的程序
当然了,正如所有的程序语言一样,“3分课本7分上机”,一定要动手才行,不能光看。多想、多思考、多尝试,才是正路。
最后,整理一下常用的快捷键(用【】表示)或命令: 1.在命令窗口(Command Window)中:
1)【上、下键】――切换到之前、之后的命令,可以重复按多次来达到你想要的命令 2)clc――清除命令窗口显示的语句,此命令并不清空当前工作区的变量,仅仅是把屏幕上显示出来的语句清除掉
3)clear――这个才是清空当前工作区的变量命令,常用语句clear all来完成
4)【Tab】键――(在command窗口,输入一个命令的前几个字符,然后按tab键,会弹出前面含这几个字符的所有命令,找到你要的命令,回车,就可以自动完成。目前讨论结果是:Matlab6.5版本中,如果候选命令超过100个,则不显示。而在Matlab7以后版本中,则没有这个限制,均可正常提示
5)【Ctrl+C】(或【Ctrl+Break】)――在Matlab程序运行过程中,可能由于程序编写的失误,导致程序不停的运行,在命令窗口输入“Ctrl+C”可以将运行的程序停下来,而不需要将整个Matlab程序关掉。不过进行此操作的前提是能够激活切换到命令窗口才行,呵呵。
2.在编辑器(Editor)中: 1)【Tab】(或【Ctrl+]】)――增加缩进(对多行有效)2)【Ctrl+[】--减少缩进(对多行有效)
3)【Ctrl+I】--自动缩进(即自动排版,对多行有效)4)【Ctrl+R】――注释(对多行有效)5)【Ctrl+T】――去掉注释(对多行有效)
6)【Ctrl+B】――括号配对检查(对版本6.5有效,但版本7.0无效,不知道是取消了还是换了另外的快捷键,请大牛们指点,其他版本没有测试过)
7)【F12】――设置或取消断点 8)【F5】――运行程序
其余的例如在Debug状态下的快捷键可以自己看菜单。
就说这么多,通过这个小学期,我觉得自己真的学到了很多!
03310901班
王鸿栋 20090286
第五篇:Matlab常用指令总结
概论
format long显示更多位数 format short显示少位数
format hex将数字显示为十六进制浮点数,(3fb999999999999a,a-f代表十六进制数,前三字符为)
double()将数字转化为双精度浮点数 ezplot(f,0,4)绘制f函数[0,4]图像 plot(x,y)绘制点或者连线 zeros(n,1)产生n维0向量
fibonacci(n)产生N个斐波那契数
求解矩阵
sum(A)对每一列的矩阵元素求和 a’为将矩阵A转置
sum(diag(A))矩阵A主对角元素之和 flipud(A)将A翻过来(上下)det(A)求A行列式的解 inv(A)求A的逆矩阵
norm(A)矩阵范数eig(A)特征值svd(A)奇异值 a=A(:,[1 3 2 4])交换矩阵二、三列
AX=B可以为X=AB xA=B可以为X=B/A norm(x,1)计算x的一阶范数即所有数的和 norm(x,2)方均根 norm(x,inf)取最大值 插值
v=polyinterp(x,y,u)(基于拉格朗日)可以计算xy组成的点阵插值结果,u为输出v对应的取得x 的值u=[,]完整次数插值 symx=sym(‘x’)创建符号变量
symx=polyinterp(x,y,symx)利用符号变量求解 pretty(p)让p变得规整 simplify(p)化简p v=piecelin(x,y,u)线性分段插值 v=pchip(x,y,u)v=pchiptx(x,y,u)为分段三次埃米特插值及其简化版 v=spline(x,y,u)v=splinetx(x,y,u)为三次样条插值及其简化版 interpgui(x,y)可以绘制上述四种插值图像,直观 方程求根 【M=2 a=1 b=2 k=0;while b-a>eps x=(a+b)/2;if x^2 > M b=x else a=x end k=k+1;end】
牛顿法,求一次导法
k=0;x=10;/初值
xprev=12;/初值的初值
while abs(x-xprev)>eps*abs(x)xprev=x;
x=0.5*(x+2/x);/x-f(x)/ f(x)的导数。k=k+1;end
fzero(f(x),初值)/将二分法和割线法和IQI算法收敛速度结合 fzerotx(f(x),[,])简化版本(fzerogui(f(x),[,]))
fmintx(f(x),a,b)ab为区间,求区间最小值
最小二乘法
b1= polyval(a1,x)将x值带入方程a1 c=polyfit(x,y,n)将x,y带入并用N次多项式拟合,输出高次到第次。X = lsqcurvefit(FUN,X0,XDATA,YDATA)FUN:用于拟合的函数 X0:迭代初始值
XDATA:要拟合的所有点的X的坐标 YDATA:要拟合的所有点的Y的坐标 最小二乘法手算公式在doc 11/13 f=inline('a(1)*x.^2+a(2)*x+a(3)','a','x')建立多元方程的简便方法。ff=@(x,y)x^2+y^2;
积分:
y=quad(@aaa,0,1)辛普森法则应用于0-1区间函数要加.y=quadtx(f,0,1)
简化版 int(‘fun’,a,b)
>>int(sym('x^2'),0,1)直接出公式的,如果输入数则出结果,输入syms a b 则出公式 >diff('a*x^2',x)数值微分 diff(x^2,2)为二次导
ode23 显示的龙格-库塔公式 ode45 比较四阶和五阶的公式p9 欧拉法:
【其实就是循环语句构成 X=(3:0.01:3.2);k=1:1:20;Y(k)=0;Y(1)=-1;for j=1:20 Y(j+1)=Y(j)+0.01*(X(j)^2+Y(j)^2);end plot(X,Y);】
[x,y]=ode23(ff,[x1,x2],y0)可以直接显示出x和y的值 高阶常微分解见第七章p19顶部和函数my fun3 边界初值问题见p21底部
编程,绘图,设置坐标轴,做出自己的坐标轴
1.axis([xminxmaxyminymax])
设置当前图形的坐标范围,分别为x轴的最小、最大值,y轴的最小最大值
2.V=axis
返回包含当前坐标范围的一个行向量
3.axis auto
将坐标轴刻度恢复为自动的默认设置
4.axis manual
冻结坐标轴刻度,此时如果hold被设定为on,那么后边的图形将使用与前面相同的坐标轴刻度范围
5.axis tight
将坐标范围设定为被绘制的数据范围
6.axis fill
这是坐标范围和屏幕的高宽比,使得坐标轴可以包含整个绘制的区域。该选项只有在PlotBoxaApectRatio或DataAspectRatioMode被设置为‘manual’模式才有效
7.axisij
将坐标轴设置为矩阵模式。此时水平坐标轴从左到有取值,垂直坐标从上到下
8.axisxy
将坐标设置为笛卡尔模式。此时水平坐标从左到右取值,垂直坐标从下到上取值
9.axis equal 10.axis square
将坐标轴设置为正方形
11.axis normal
将当前的坐标轴框恢复为全尺寸,并将单位刻度的所有限制取消
12.axis vis3d
冻结屏幕高宽比,使得一个三维对象的旋转不会改变坐标轴的刻度显示
13.axis off
关闭所有的坐标轴标签、刻度、背景
14.axis on
打开所有的坐标轴标签、刻度、背