资源描述:
《matlab基础与编程入门课件 第六讲》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六讲MATLAB绘图MATLAB设有大量函数和命令来绘制出各种各样的图形,具有强大的绘图功能主要内容6.1二维图形6.2其他二维图形6.3符号函数绘图6.4三维图形6.5图形修饰处理6.6图像处理与动画制作6.1二维数据曲线图6.1.1绘制单根二维曲线plot函数基本调用格式为:plot(x,y)其中x和y为长度相同的向量,分别用于存储x坐标和y坐标数据。对给定数据绘制图形例6-1:给定数据:>>x=[123577.5810];>>y=[26.5775.5468];>>plot(x,y)程序如下:一旦命令得以执行,
2、图形窗口随绘图结果打开xy123577.586.5775.5468102线条属性的修改plot命令可以添加线条属性参数来确定:线条的类型.线条的颜色.线条的标记(markers)plot(x,y,’linespecifiers’)图形颜色、标记和线型参数表色彩字符所定颜色线型字符线型格式标记符号数据点形式标记符号数据点形式y黄-实线(默认).点<左三角形m紫:点线o圆s方形c青-.点划线x叉号d菱形r红--虚线+加号h六角星g绿*星号p五角星b篮v下三角形w白^上三角形k黑>右三角形Plot命令的线型属性修改线型修改
3、选项以字符串形式输入plot(x,y,’r’)颜色,线型,标记可以以任何顺序输入plot(x,y,’r--d’)/plot(x,y,’--r’)所有选项都是可选的,即plot命令中可以同时含有一个、两个或三个选项例6-2:修改线型plot(x,y)蓝色实线(默认)>>x=[123577.5810];>>y=[26.5775.5468];>>plot(x,y)plot(x,y,’r’)红色实线plot(x,y,’--k’)黑色虚线.plot(x,y,’*’)用“*”号标记的点,中间无连线plot(x,y,’g:d’)菱
4、形标记的绿色点线例6-3在0≤x≤2区间内,绘制曲线y=2e-0.5xcos(4πx)程序如下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*cos(4*pi*x);plot(x,y)plot(x,y,’r-*’)plot(x,y)plot(x,y,’r-*’)plot函数最简单的调用格式是只包含一个输入参数:plot(x)在这种情况下,当x是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘制折线图。6.1.2绘制多根二维曲线1.plot函数的输入参数是矩阵形式
5、若有两个输入参数:plot(x,y)(1)当x是向量,y是有一维与x同维的矩阵时,则绘制出多根不同颜色的曲线。曲线条数等于y矩阵的另一维数,x被作为这些曲线共同的横坐标。(2)当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。若plot函数只有一个输入:plot(x)当输入参数x为矩阵,且为实矩阵时,则按列绘制每列元素值相对其下标的曲线,曲线条数等于输入参数矩阵的列数。当输入参数x是复数矩阵时,则按列分别以元素实部和虚部为横、纵坐标绘制多条曲线。例6-4,若在命令窗口输入矩阵
6、>>x=[3,5,9;3,10,67;3,23,90]x=3593106732390>>plot(x)第一列第二列第三列2.含多个输入参数的plot函数调用格式为:plot(x1,y1,x2,y2,…,xn,yn)(1)当输入参数都为向量时,x1和y1,x2和y2,…,xn和yn分别组成一组向量对,每一组向量对的长度可以不同。每一向量对可以绘制出一条曲线,这样可以在同一坐标内绘制出多条曲线。(2)当输入参数有矩阵形式时,配对的x,y按对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。例6-5分析下列程序绘制
7、的曲线。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,’r-*’)x1,y1x,y三列3.具有两个纵坐标标度的图形在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数。调用格式为:plotyy(x1,y1,x2,y2)其中
8、x1,y1对应一条曲线,x2,y2对应另一条曲线。横坐标的标度相同,纵坐标有两个,左纵坐标用于x1,y1数据对,右纵坐标用于x2,y2数据对。例6-6用不同标度在同一坐标内绘制曲线y1=0.2e-0.5xcos(4πx)和y2=2e-0.5xcos(πx)。程序如下:x=0:pi/100:2*pi;y1=0.2*exp(-0.5*x).*cos