实验二MATLAB绘图

  • 格式:doc
  • 大小:115.02 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验二MATLAB绘图

一.实验目的

掌握matlab二维图形和三维图形的绘制方法,并会对图形进行处理,掌握符号函数(显函数、隐函数和参数方程)的画图,掌握空间曲线和空间曲面的绘图,会对所绘图形进行加格栅,图例和标注等一些简单的处理.

二.实验原理与方法

(一).曲线图:

Matlab作图是通过描点、连线来实现的,故在画一个曲线图形之前,必须先取得该图形上的一系列的点的坐标(即横坐标和纵坐标),然后将该点集的坐标传给Matlab函数画图.命令格式为:plot(x,y,s)

其中x,y分别表示所取点集的横纵坐标,s指定线型及颜色.缺省时表示画的是蓝色实线.Plot(X,Y1,S1,X,Y2,S2,……,X,Yn,Sn)

表示将多条线画在一起.

例在[0,2*pi]用红线画sin(x),用绿圈画cos(x). 解:x=linspace(0,2*pi,30);

y=sin(x);

z=cos(x);

plot(x,y,’r’,x,z,’g o’)

所得图形如下图所示

(二)符号函数(显函数、隐函数和参数方程)画图

(1) ezplot

ezplot(‘f(x)’,[a,b])

表示在a

ezplot(‘f(x,y)’,[xmin,xmax,ymin,ymax])

表示在区间xmin

ezplot(‘x(t)’,’y(t)’,[tmin,tmax])

表示在区间tmin

例在[0,pi]上画y=cos(x)的图形

解输入命令:ezplot(‘sin(x)’,[0,pi])

例 在[0,2*pi]上画t x 3cos =,t y 3sin =星形图

解 输入命令:ezplot(‘cos(t).^3’,’sin(t).^3’,[0,2*pi])

例 在[-2,0.5],[0,2]上画隐函数0)sin(=+xy e x 的图

解 输入命令:ezplot('exp(x)+sin(x.*y)',[-2,0.5,0,2])

(2) fplot

格式:fplot(‘fun’,lims)

表示绘制字符串fun 指定的函数在lims=[xmin,xmax]的图形

注意:

[1] fun 必须是M 文件的函数名或是独立变量为x 的字符串.

[2] fplot 函数不能画参数方程和隐函数图形,但在一个图上可以画多个图形。 例 在[-1,2]上画)3sin(22x e y x +=的 图形

解 先建M 文件myfun1.m :function Y=myfun1(x)

Y=exp(2*x)+sin(3*x.^2)

再输入命令:fplot(‘myfun1’,[-1,2])

例 在[-2,2]范围内绘制函数tanh 的图形

解 fplot(‘tanh’,[-2,2])

例 x 、y 的取值范围都在[-π2,π2],画函数tanh(x),sin(x),cos(x)的图形

解 输入命令: fplot(‘[tanh(x),sin(x),cos(x)]’,2*pi*[-1 1 –1 1])

(三)对数坐标图

在很多工程问题中,通过对数据进行对数转换可以更清晰地看出数据的某些特征,在对数坐标系中描绘数据点的曲线,可以直接地表现对数转换.对数转换有双对数坐标转换和单轴对数坐标转换两种.用loglog 函数可以实现双对数坐标转换,用semilogx 和semilogy 函数可以实现单轴对数坐标转换

loglog() 表示 x 、y 坐标都是对数坐标系

semilogx() 表示 x 坐标轴是对数坐标系

semilogy(…) 表示y 坐标轴是对数坐标系

plotyy( ) 有两个y 坐标轴,一个在左边,一个在右边例 用方形标记

创建一个简单的loglog

解 输入命令:

x=logspace(-1,2);

loglog(x,exp(x),’-s’)

grid on %标注格栅.

例 创建一个简单的半对数坐标图

解 输入命令:

x=0:.1:10;

semilogy(x,10.^x)

(四)三维曲线

命令格式: plot3(x,y,z,s)

n 维向量,分别表示曲线上点集的横坐标、纵坐标、函数值.

s 指定颜色、线形等

例 在区间[0,10*pi]画出参数曲线x=sin(t),y=cos(t),z=t.

解 t=0:pi/50:10*pi;

plot3(sin(t),cos(t),t)

(五)三维网格图

格式:mesh(x,y,z) %画出三维网格图

meshc(x,y,z) %画出等高线的三维网格图.

Meshz(x,y,z) %画出带有底座的三维网格图.

说明:若x 与y 均为向量,若n=length(X),m=length(y),则 Z 必须为行数和列数分别为m,n 的矩阵,空间中的点(x(j),y(i),z(i,j))为所画曲面网线的交点,x 对应z 的列,y 对应z 的行.

在三维作图中常用到命令meshgrid,其功能是生成二元函数z=f(x,y)中x-y 平面上的矩形定义域中数据点矩阵X 和Y,其命令格式为:

[X,Y]=meshgrid(x,y)

例 画函数Z=(X+Y).^2的图形.

解:x=-3:0.1:3;

y=1:0.1:5;

[X,Y]=meshgrid(x,y);

Z=(X+Y).^2;

例:绘出带有等高线的马鞍面22

225

4y x z -= 解:从命令窗口输入如下命令

x=-8:8;

y=-8:8;

[X,Y]=meshgrid(x,y);

Z=X.^2/4^2-Y.^2/5^2;

Meshc(X,Y,Z)

(六).三维曲面图

格式:surf(X,Y,Z) %绘出三维曲面图

surfc(X,Y,Z) %绘出带有等高线的三维曲面图.

说明:surf 同mesh 命令的用法和格式相同,不同之处在于所得图形是一个彩色曲面而非彩色网格