您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 电气安装工程 > matlab绘图教程
第五章Matlab绘图吴良杰HarbinEngineeringUniversity哈尔滨工程大学课件Matlab绘图高层绘图函数不需过多考虑绘图细节,只需给出一些基本参数。简单明了、方便高效低层绘图操作将图形的每个元素(坐标轴、曲线、曲面或文字)分配一个句柄,通过该句柄对该图形元素进行操作。控制和表现图形的能力更强哈尔滨工程大学课件二维图形绘图示例:绘制从0到2pi之间的正弦曲线。步骤:1.产生x轴、y轴数据:x=0:pi/20:2*piy=sin(x)2.绘制出正弦曲线:plot(x,y,'r-')‘r-’表示以红色实线绘制出正弦曲线。3.给图形加上栅格线:gridon哈尔滨工程大学课件二维图形二维图形将平面坐标上的数据点连接起来的平面图形坐标系–直角坐标–对数坐标–极坐标数据点–向量–矩阵哈尔滨工程大学课件二维图形基本函数:plot–功能:»自动打开一个图形窗口Figure»如果已经存在一个图形窗口,plot命令则清除当前图形,绘制新图形»根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上;可自定义坐标轴»可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗口多曲线分图绘图;可多窗口绘图»可任意设定曲线颜色、线型和标记符号»可给图形加坐标网线和图形加注功能哈尔滨工程大学课件二维图形plot的调用格式–plot(x)——缺省自变量绘图格式–plot(x,y)——基本格式,以y(x)的函数关系作出直角坐标图,如果y为n×m的矩阵,则以x为自变量,作出m条曲线–plot(x1,y1,x2,y2,…,xn,yn)——多条曲线绘图格式–plot(x1,y1,选项1,x2,y2,选项2,…,xn,yn,选项n)——含选项的绘图格式哈尔滨工程大学课件二维图形plot(x)–x为向量以x相应元素下标为横坐标,x元素值为纵坐标绘图x=[00.62.358.311.71517.719.420];plot(x)–x为矩阵按列绘制每列元素值相对其下标的曲线x=[1,2,3;4,5,6];plot(x)哈尔滨工程大学课件二维图形plot(x,y)–x和y为长度相同的向量,分别用于存储x坐标和y坐标数据。x=0:pi/100:2*pi;y=2*exp(-0.5*x).*sin(2*pi*x);plot(x,y)–当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。t=linspace(0,2*pi,100);x=[t;t]';y=[sin(t);cos(t)]';plot(x,y)哈尔滨工程大学课件二维图形plot(x1,y1,x2,y2,…,xn,yn)–当输入参数都为向量时,每一向量对(xi,yi)绘制出一条曲线。每一组向量对的长度可以不同。t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y,t,y1,t,y2)–当输入参数有矩阵形式时,配对的x,y按对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。x1=linspace(0,2*pi,100);x2=linspace(0,3*pi,100);x3=linspace(0,4*pi,100);y1=sin(x1);y2=1+sin(x2);y3=2+sin(x3);x=[x1;x2;x3]';y=[y1;y2;y3]';plot(x,y,x1,y1-1)哈尔滨工程大学课件二维图形plot(x1,y1,选项1,x2,y2,选项2,…,xn,yn,选项n)–选项:确定颜色、线型和数据点标记符号。例如,plot(x1,y1,’b-.’,x2,y2,‘y:d’)‘b-.’:蓝色点划线,‘y:d’:黄色虚线并用菱形符标记数据点。–选项省略时,线型一律用实线,颜色将根据曲线的先后顺序依次采用下表中给出的前7种颜色。t=0:0.2:2*pi;x=sin(t);y=cos(t);plot(t,x,'+r',t,y,'-b')哈尔滨工程大学课件颜色参数颜色线型参数线型标记符号标记b蓝-实线.圆点g绿:点线o圆圈r红-.点划线+加号c青--虚线*星号m品红x叉号y黄'square'或s方块k黑'diamond'或d菱形w白^朝上三角符号v朝下三角符号朝左三角符号朝右三角符号p五角星h六角星哈尔滨工程大学课件二维图形双纵坐标函数plotyy将函数值具有不同量纲、不同数量级的两个函数绘制在同一坐标中。调用格式为:plotyy(x1,y1,x2,y2)横坐标的标度相同,左纵坐标用于x1-y1数据对,右纵坐标用于x2-y2数据对。例用不同标度在同一坐标内绘制曲线y1=e-0.5xsin(2πx)及曲线y2=1.5e-0.1xsin(x)。x1=0:pi/100:2*pi;x2=0:pi/100:3*pi;y1=exp(-0.5*x1).*sin(2*pi*x1);y2=1.5*exp(-0.1*x2).*sin(x2);plotyy(x1,y1,x2,y2);右纵坐标左纵坐标哈尔滨工程大学课件绘制图形的辅助操作图形标注:图形名称、坐标轴说明、图形某一部分的含义坐标控制:设定坐标系范围自动根据要绘制曲线数据的范围选择合适的坐标刻度,使得曲线能够尽可能清晰地显示出来。图形保持:在已存在的图形上再继续添加新的图形。图形窗口的分割:在一个图形窗口中绘制多个子图形哈尔滨工程大学课件绘制图形的辅助操作—图形标注图形标注函数的调用格式:title(图形名称)xlabel(x轴说明)ylabel(y轴说明)text(x,y,图形说明)在x,y坐标处添加文字说明legend(图例1,图例2,…)哈尔滨工程大学课件绘制图形的辅助操作—图形标注例t=0:0.1:10;y1=sin(t);y2=cos(t);plot(t,y1,'r',t,y2,'b-');x=[1.7*pi;1.6*pi];y=[-0.3;0.8];s=['sin(t)';'cos(t)'];text(x,y,s);title('正弦和余弦曲线');legend('正弦','余弦');xlabel('时间t');ylabel('正弦、余弦');哈尔滨工程大学课件绘制图形的辅助操作—坐标控制无坐标控制x=0:.01:pi/2;figure(1)plot(x,tan(x),'-ro')坐标控制调用格式为:axis([xminxmaxyminymaxzminzmax])figure(2)plot(x,tan(x),'-ro')axis([0,pi/2,0,5])哈尔滨工程大学课件绘制图形的辅助操作—坐标控制axis函数常用的用法:axisequal纵、横坐标轴采用等长刻度axissquare产生正方形坐标系(缺省为矩形)axisauto使用缺省设置axisoff取消坐标轴axison显示坐标轴其他坐标控制函数gridon/off:控制是否画网格线。boxon/off:控制是否加边框线。figure(3);plot(x,tan(x),'-ro');axis([0,pi/2,0,5]);gridon;boxon;哈尔滨工程大学课件绘制图形的辅助操作—图形保持命令格式holdon/off:控制是保持原有图形还是刷新原有图形。例a=[202530];b=[0.30.54];plot(a,b,'-or')holdonc=[0.437];plot(a,c,'-*b')holdoff哈尔滨工程大学课件绘制图形的辅助操作—图形窗口的分割函数格式:subplot(m,n,p)将一个绘图窗口分割成m*n个子区域,并按行从左至右,由上至下依次编号。p表示第p个绘图子区域。哈尔滨工程大学课件绘制图形的辅助操作—图形窗口的分割例:在一个图形窗口中以子图形式同时绘制正弦、余弦、正切、余切曲线。x=linspace(0,2*pi,60);y=sin(x);z=cos(x);t=sin(x)./(cos(x)+eps);ct=cos(x)./(sin(x)+eps);subplot(2,2,1);plot(x,y);title('sin(x)');axis([0,2*pi,-1,1]);subplot(2,2,2);plot(x,z);title('cos(x)');axis([0,2*pi,-1,1]);subplot(2,2,3);plot(x,t);title('tangent(x)');axis([0,2*pi,-40,40]);subplot(2,2,4);plot(x,ct);title('cotangent(x)');axis([0,2*pi,-40,40])哈尔滨工程大学课件特殊的二维图形函数二维图的形状备注bar(x,y)条形图x是横坐标,y是纵坐标fplot(y,[ab])精确绘图y代表某个函数,[ab]表示需要精确绘图的范围polar(θ,r)极坐标图θ是角度,代表以θ为变量的函数stairs(x,y)阶梯图x是横坐标,y是纵坐标stem(x,y)针状图x是横坐标,y是纵坐标fill(x,y,’b’)填充图x是横坐标,y是纵坐标,‘b’代表颜色scatter(x,y,s,c)散点图s是圆圈标记点的面积,c是标记点颜色pie(x)饼图x为向量哈尔滨工程大学课件特殊的二维图形例分别以条形图、填充图、阶梯图和针状图形式绘制曲线y=2e-0.5x。x=0:0.35:7;y=2*exp(-0.5*x);subplot(2,2,1);bar(x,y,'g');title('bar(x,y,''g'')');axis([0,7,0,2]);subplot(2,2,2);fill(x,y,'r');title('fill(x,y,''r'')');axis([0,7,0,2]);subplot(2,2,3);stairs(x,y,'b');title('stairs(x,y,''b'')');axis([0,7,0,2]);subplot(2,2,4);stem(x,y,'k');title('stem(x,y,''k'')');axis([0,7,0,2]);哈尔滨工程大学课件特殊的二维图形例:某次考试优秀、良好、中等、及格、不及格的人数分别为:7,17,23,19,5,试用饼图作成绩统计分析。pie([7,17,23,19,5]);title('饼图');legend('优秀','良好','中等','及格','不及格');哈尔滨工程大学课件对数坐标绘图有时变量变化范围非常大,如x轴从0.01到100,这时如果仍采用plot绘图,就会失去局部可视性。因此应用对数坐标系来绘图。在对数坐标中可清晰地看到局部。x轴对数semilogx:x轴是log10,y是线性的,等价于plot(log10(x),y)y轴对数semilogy:y轴是log10,x是线性的,等价于plot(x,log10(y))双对数loglog;用log10-log10标度绘图哈尔滨工程大学课件对数坐标绘图例:绘制y=10x2的线性坐标图和三种对数坐标图。x=0:0.1:10;y=10*x.*x;subplot(2,2,1);plot(x,y);title('plot(x,y)');gridon;subplot(2,2,2);semilogx(x,y);title('semilogx(x,y)');gridon;subplot(2,2,3);semilogy(x,y);title('semilogy(x,y)');gridon;subplot(2,2,4);loglog(x,y);title('loglog(x,y)');gridon;哈尔滨工程大学课件极坐标绘图函数格式:polar(theta,rho,选项)theta—角度(弧度表示)rho—极半径选项:与plot函数相似例:建立ρ=sin(2θ)cos(2θ)的极坐标图theta=linspace(0,2*pi);rho=sin(2*theta).*cos(2*theta);
本文标题:matlab绘图教程
链接地址:https://www.777doc.com/doc-4886104 .html