matlab中的图形处理功能(很全)

合集下载

MATLAB图形工具箱

MATLAB图形工具箱

一、二维曲线的绘制
对于图形坐标的控制,请看图片自 己在上机实习的时候学会!
一、二维曲线的绘制
绘制函数的图形: 语法: fplot(‘fun’,lim,’s’):绘制函数fun的图形. 说明:fun为要绘制图形的函数,lim为图形的 范围,如:[0,2*pi],s为图形所用的点型,线 型和颜色的设定,与plot命令相同.
二、三维图形的绘制
2‘ 三维曲面图 语法:surf(z) surf(x,y,z) 说明:意义与mesh命令相同,只是图形不 是网线而是曲面。
三、特殊图形的绘制
1、条形图 语法:bar(x,y,width) %画条形图 bar3(x,y,width,’参数’) %画三维条形图 说明:x是横坐标向量,省略时默认值是1:m,m为y的向 量长度;y是纵坐标,当y是向量时,每个元素对应一 个竖条,当y是矩阵时,将画出m组竖条,每组包含n 条;width是竖条的宽度。默认时为0.8,(把bar命令 改为barh命令时将绘制出水平的条形图)。 三维的条形图中的参数可以detached, grouped,stacked三个,分别表示不同的显示方式.
一、二维曲线的绘制
数据点形 实点标记:. 圆圈标记:。 等等,其他更多的可以查相关的资料。 例如:>>x=0:0.1:2*pi; >>plot(x,sin(x),’r-.’) :用红色点划线 画出曲线 >>plot(x,cos(x),’b:*’)
一、二维曲线的绘制
6、交互式图形命令 (1)ginput命令 ginput命令与其他图形命令的原理不同, 不是把数据表现在图形上,而是从图上 获取数据。因此,ginput命令在数值优化、 工程设计中十分有用,仅适用于二维图 形。

matlab命令-应该很全了

matlab命令-应该很全了

matlab命令,应该很全了!来源:李家叶的日志matlab命令一、常用对象操作:除了一般windows窗口的常用功能键外。

1、!dir 可以查看当前工作目录的文件。

!dir& 可以在dos状态下查看。

2、who 可以查看当前工作空间变量名,whos 可以查看变量名细节。

3、功能键:功能键快捷键说明方向上键 Ctrl+P 返回前一行输入方向下键 Ctrl+N 返回下一行输入方向左键 Ctrl+B 光标向后移一个字符方向右键 Ctrl+F 光标向前移一个字符Ctrl+方向右键 Ctrl+R 光标向右移一个字符Ctrl+方向左键 Ctrl+L 光标向左移一个字符home Ctrl+A 光标移到行首End Ctrl+E 光标移到行尾Esc Ctrl+U 清除一行Del Ctrl+D 清除光标所在的字符Backspace Ctrl+H 删除光标前一个字符Ctrl+K 删除到行尾Ctrl+C 中断正在执行的命令4、clc可以命令窗口显示的内容,但并不清除工作空间。

二、函数及运算1、运算符:+:加,-:减, *:乘, /:除,\:左除 ^:幂,‘:复数的共轭转置,():制定运算顺序。

2、常用函数表:sin( ) 正弦(变量为弧度)Cot( ) 余切(变量为弧度)sind( ) 正弦(变量为度数)Cotd( ) 余切(变量为度数)asin( ) 反正弦(返回弧度)acot( ) 反余切(返回弧度)Asind( ) 反正弦(返回度数)acotd( ) 反余切(返回度数)cos( ) 余弦(变量为弧度)exp( ) 指数cosd( ) 余弦(变量为度数)log( ) 对数acos( ) 余正弦(返回弧度)log10( ) 以10为底对数acosd( ) 余正弦(返回度数)sqrt( ) 开方tan( ) 正切(变量为弧度)realsqrt( ) 返回非负根tand( ) 正切(变量为度数)abs( ) 取绝对值atan( ) 反正切(返回弧度)angle( ) 返回复数的相位角atand( ) 反正切(返回度数)mod(x,y) 返回x/y的余数sum( ) 向量元素求和3、其余函数可以用help elfun和help specfun命令获得。

matlab画图大全

matlab画图大全

@绘图%二维画图x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y,'r',x,z,'g')%ezplot符号函数(显函数、隐函数和参数方程)画图subplot(1,3,1)ezplot('cos(x)',[0,pi])subplot(1,3,2)ezplot('cos(t)^3','sin(t)^3',[0,2*pi])subplot(1,3,3)ezplot('exp(x)+sin(x*y)',[-2,0.5,0,2])%在[-2,0.5],[0,2](坐标轴的范围)上画隐函数的图.1%fplot(‘fun’,lims) 表示绘制字符串fun指定的函数在lims=[xmin,xmax]的图形.%[1] fun必须是M文件的函数名或是独立变量为x的字符串.%[2] fplot函数不能画参数方程和隐函数图形,但在一个图上可以画多个图形.fplot('tanh',[-2,2],':')hold onfplot('[tanh(x),sin(x),cos(x)]',2*pi*[-1 1 -1 1])%对数坐标图 loglog(Y):表示 x、y坐标都是对数坐标系 semilogx(Y):表示 x坐标轴是对数坐标系%semilogy(…):表示y坐标轴是对数坐标系 plotyy:有两个y坐标轴,一个在左边,一个在右边x=0:.1:10;semilogy(x,10.^x)2x=logspace(-1,2);loglog(x,exp(x),'-s')%-s是方形标注符grid onx=[1:1:100];subplot(2,3,1);plot(x,x.^3);grid on;title 'plot-y=x^3';subplot(2,3,2);3loglog(x,x.^3);grid on;title 'loglog-logy=3logx';subplot(2,3,3);plotyy(x,x.^3,x,x);grid on;title 'plotyy-y=x^3,logy=3logx';subplot(2,3,4);semilogx(x,x.^3);grid on;title 'semilogx-y=3logx';subplot(2,3,5);semilogy(x,x.^3);grid on;title 'semilogy-logy=x^3';%三维绘图%空间曲线 plot3(x,y,z,s) x,y,z为n维向量,分别表示曲线上点集的横坐标、纵坐标、函数值 s为指定颜色、线形等t=0:pi/50:10*pi;plot3(sin(t),cos(t),t)%在区间[0,10π]画出参数曲线 x=sint,y=cost,z=t.rotate3d %旋转图形 在图形窗口上面的选项栏里有4x=-3:0.1:3;y=1:0.1:5;[X,Y]=meshgrid(x,y);Z=(X+Y).^2;plot3(X,Y,Z)%其中x,y,z是都是m×n矩阵,其对应的每一列表示一条曲线.%%空间曲面 surf(x,y,z) x,y,z为数据矩阵.分别表示数据点的横坐标、纵坐标、函数值,画出数据点(x,y,z)表示的曲面x=-3:0.1:3;y=1:0.1:5;[X,Y]=meshgrid(x,y);%生成x,y的数据网格使曲面更光滑Z=(X+Y).^2;surf(X,Y,Z)shading flat%使图形变得光滑rotate3dshading interp%除去网格 只在surf函数下起作用 mesh不能5doc shading%shading flat; shading faceted(缺省); shading interp; shading (axes_handle,...)@%%mesh(x,y,z)x,y,z为数据矩阵.分别表示数据点的横坐标、纵坐标、函数值,画网格曲面(中间没有曲面)x=-3:0.1:3; y=1:0.1:5;[X,Y]=meshgrid(x,y);%在特定区域内生成网格Z=(X+Y).^2;mesh(X,Y,Z)6[X,Y]=meshgrid(-3:.125:3);Z=peaks(X,Y);subplot(1,2,1)meshz(X,Y,Z)subplot(1,2,2)surf(X,Y,Z)shading flat7%%图形处理%加栅格、图例和标注%grid off/onx=linspace(0,2*pi,30);y=sin(x);plot(x,y)xlabel('自变量X')ylabel('函数Y')title('示意图')grid on8% 命令gtext(‘string’)用鼠标放置标注在现有的图上. x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y,x,z)gtext('sin(x)');gtext('cos(x)');9% 命令gtext(‘string’)用鼠标放置标注在现有的图上. x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y,x,z)gtext('sin(x)');gtext('cos(x)');10%图形保持 hold on/offx=linspace(0,2*pi,30);z=cos(x);y=sin(x);plot(x,z,:)%“:”表示虚线hold onplot(x,y)zoom on%放大命令11%figure(h)新建h窗口,激活图形使其可见,并把它置于其它图形之上%割窗口 subplotx=linspace(0,2*pi,100);y=sin(x); z=cos(x);a=sin(x).*cos(x);b=sin(x)./(cos(x)+eps)subplot(2,2,1);plot(x,y),title('sin(x)')subplot(2,2,2);plot(x,z),title('cos(x)')subplot(2,2,3);plot(x,a),title('sin(x)cos(x)')subplot(2,2,4);plot(x,b),title('sin(x)/cos(x)')12%缩放模式:zoom on/off%改变视角:view(a,b)a为方位角,b为仰角;view([x,y,z])x,y,z为笛卡尔坐标x=-3:0.1:3; y=1:0.1:5;[X,Y]=meshgrid(x,y);Z=(X+Y).^2;subplot(2,2,1); mesh(X,Y,Z)subplot(2,2,2);mesh(X,Y,Z);view(50,-34)subplot(2,2,3);mesh(X,Y,Z);view(-60,70)subplot(2,2,4);mesh(X,Y,Z);view([0,1,1])13%%制作动画 Moviein(),getframe,movie():函数Moviein()产生一个帧矩阵来存放动画中的帧;函数getframe对当前的图像进行快照;函数movie()按顺序回放各帧.[x,y,z]=peaks(30);surf(x,y,z)axis([-3 3 -3 3 -10 10])axis offshading interpcolormap(hot)m=moviein(360);for i=1:360view(-37.5+1*(i-1),30)m(:,i)=getframe;endmovie(m)14%特殊图形%1. 极坐标图:polar (theta,rho,s)theta=linspace(0,2*pi),rho=sin(2*theta).*cos(2*theta);polar(theta,rho,'g')title('Polar plot of sin(2*theta).*cos(2*theta)');%2. 散点图: scatter(X,Y,S,C)在向量X和Y的指定位置显示彩色圈.X和Y必须维数相同.load seamountscatter(x,y,5,z)15%3. 平面等值线图: contour(x,y,z,n) 绘制n个等值线的二维等值线图[X,Y]=meshgrid(-2:.2:2,-2:.2:3);Z=X.*exp(-X.^2-Y.^2);[C,h]=contour(X,Y,Z);clabel(C,h)colormap cool16%空间等值线图:contour3(x,y,z,n)[x,y,z]=peaks;subplot(1,2,1)contour3(x,y,z,16,'s')grid, xlabel('x-axis'), ylabel('y-axis') zlabel('z-axis')title('contour3 of peaks');subplot(1,2,2)contour(x,y,z,16,'s');grid, xlabel('x-axis'), ylabel('y-axis') title('contour of peaks');17%三维散点图2. 三维散点图 scatter3(X,Y,Z,S,C) s为size c为color 在向量X,Y和Z指定的位置上显示彩色圆圈.向量X,Y和Z的维数必须相同. [x,y,z]=sphere(16);X=[x(:)*.5 x(:)*.75 x(:)];Y=[y(:)*.5 y(:)*.75 y(:)];Z=[z(:)*.5 z(:)*.75 z(:)];S=repmat([1 .75 .5]*10,numel(x),1);C=repmat([1 2 3],numel(x),1);scatter3(X(:),Y(:),Z(:),S(:),C(:),'filled'),view(-60,60)18%要在某山区方圆大约27km2范围内修建一条公路,从山脚出发经过一个居民区,再到达一个矿区.横向纵向分别每隔400m测量一次,得到一些地点的高程:(平面区域0≤x≤ 5600,0≤y≤4800),需作出该山区的地貌图和等高线图. x=0:400:5600;y=0:400:4800;z=[370 470 550 600 670 690 670 620 580 450 400 300 100 150 250;...510 620 730 800 850 870 850 780 720 650 500 200 300 350 320;...650 760 880 970 1020 1050 1020 830 900 700 300 500 550 480 350;...740 880 1080 1130 1250 1280 1230 1040 900 500 700 780 750 650 550;...830 980 1180 1320 1450 1420 1400 1300 700 900 850 840 380 780 750;...880 1060 1230 1390 1500 1500 1400 900 1100 1060 950 870 900 930 950;...910 1090 1270 1500 1200 1100 1350 1450 1200 1150 1010 880 1000 1050 1100;...950 1190 1370 1500 1200 1100 1550 1600 1550 1380 1070 900 1050 1150 1200;...1430 1430 1460 1500 1550 1600 1550 1600 1600 1600 1550 1500 1500 1550 1550;...1420 1430 1450 1480 1500 1550 1510 1430 1300 1200 980 850 750 550 500;...1380 1410 1430 1450 1470 1320 1280 1200 1080 940 780 620 460 370 350;...1370 1390 1410 1430 1440 1140 1110 1050 950 820 690 540 380 300 210;...1350 1370 1390 1400 1410 960 940 880 800 690 570 430 290 210 150];meshz(x,y,z)xlabel('X'),ylabel('Y'),zlabel('Z')%插值使曲面光滑[x1,y1]=meshgrid(0:10:5600,0:10:4800);z1=griddata(x,y,z,x1,y1,'cubic');figure(2),surf(x1,y1,z1)shading flatfigure(3)contour(x,y,z)19figure(4)contour3(x,y,z)202122。

MATLAB的主要功能

MATLAB的主要功能

MATLAB的主要功能1. 数值计算和符号计算功能2. 绘图功能3. MA TLAB语言体系4. MA TLAB工具箱Matlab语言的特点编程简单,类似于其他语言,如C集成度更高,扩展性更好数学问题数值解能力强大由Maple内核构成的符号运算工具箱可以继承Maple所有解析解的求解能力在数学、工程领域各种“工具箱”强大的系统仿真能力,Simulink建模Mathlab的命令窗口(command window)1. 命令窗口的作用命令窗口处于窗口的右侧,用来输入数据、操作命令和显示运行结果。

命令窗口(Command Window)是用户使用的主要场所,此时,可以输入变量、数组及运算命令,进行一些简单的运算;用↑↓←→键搜索、修改以前使用过的命令操作, 用clc清除窗口; 用help sqrt ( help input …)寻求有关帮助;2. 命令行的输入规则一个命令行输入一条命令,命令行以回车结束。

一个命令行也可以输入若干条命令,各命令之间以逗号分隔,若前一命令后带有分号,则逗号可以省略。

如果一个命令行很长,要加续行符(三个小黑点…)。

3. 命令行的编辑各种编辑键,如方向键,删除键等,基本同其它软件,可见课本. 比较特殊的是:上箭头键(up)可调入前一行命令.4. 常用操作系统命令●>disp(x) 显示x的内容,与x 的区别是:前者仅显示x的内容,后者多个"x=".●> diary 建立一个diary文件,如diary abc.dia. 文件名和扩展名可任取,并开始记录此后MA TLAB的所有操作,用diary off停止记录,并可用type abc.dia显示记录内容.●> path 显示当前搜索路径●管理文件的命令:●> what, 显示当前目录下的m, mat, mex文件●> dir, 或> ls, 显示当前目录下的所有文件●> cd path 改变当前目录为path●> cd, >chdir, >pwd, 都可显示当前的工作目录●> type abc, 显示文件abc.m的内容●> delete abc.m, 删除m文件abc.m(必须有扩展名)●> which abc, 显示abc.m所在的目录,若要显示其它类型文件的目录,必须加扩展名.●> quit, 退出MATLAB.MATLAB的通用命令管理命令和函数:功能强大的工具箱是MATLAB的另一特色。

MATLAB-图像处理之三维绘图

MATLAB-图像处理之三维绘图

(2)颜色映象使用
• 语句colormap(M)将矩阵M作为当前图形 窗口所用的颜色映象。
• 例如,colormap(cool)装入了一个有64 个输入项的cool颜色映象。
• colormap default装入了缺省的颜色映象 (hsv)。
• 函数plot、plot3、contour(等高线图) 和contour3不使用颜色映象,它们使用列 在plot颜色和线形表中的颜色。而大多数其 它绘图函数,比如mesh、surf、fill、 pcolor和它们的各种变形函数,使用当前 的颜色映象。

MMSHOW(pink(30))
• 函数mmshow取和colormap同样的输入参 量,但在这种情况下它用自己的伪彩色显 示而不是把颜色映象施加到当前图形。
• 另一种途径是使用MATLAB的函数rgbplot, 它可以把颜色映象的各列分别画成红、绿 和蓝色。
例如rgbplot(hot)
• 图中显示红色分量首先增加,然后是绿色, 最后是蓝色。
2.三维曲面/网线图
三维图形较二维图形复杂:表现在: 1. 数据的准备 2. 三维图形色彩的使用 3. 明暗处理、 4. 光照处理、 5. 视点处理等
(1)数据准备(很重要)
• 画函数 z f (x, y)所代表的三维空间曲面,需 要做以下数据准备: :
• (1)确定自变量的取值范围和取值间隔; • (2)构成自变量x,y的自变量“格点”矩阵; • (3)计算在自变量采样“格点”上的函数
• MATLAB的预定义色图矩阵CM
CM
含义
CM
含义
autumn 红、黄浓淡色
jet
蓝头红尾饱和值色
bone
蓝色调浓淡色

Matlab图形界面图像的旋转、平移和缩放.

Matlab图形界面图像的旋转、平移和缩放.

Matlab图形界面图像的旋转、平移和缩放姓名:班级:学号:目录问题描述 (2)摘要 (2)正文 (3)1、界面设计 (3)2、打开图片功能 (4)3、实现图片的任意角度的旋转 (5)4、图像的平移 (8)5、图像的缩放(放大与缩小) (12)实验心得 (16)附录: (16)Matlab图形界面操作------图像的旋转、平移和缩放问题描述期末运用学习的matlab知识通过图形用户界面对图片进行操作,实现如下功能。

●能够查找和读取计算机中存储图像。

●实现图像的旋转、平移、缩放等几何变换。

●通过matlab界面功能实现界面的完美布局。

●编写代码和回调函数实现上述功能。

摘要本次任务旨在完成以下几个任务:●整体分为四大模块:原图、旋转、平移和缩放。

●利用数字图像处理技术,以MATLAB为平台,建立一个实现设计主题的简易处理系统。

●能显示输入图像、输出图像。

●程序代码要有注释说明,调用MATLAB函数要清楚并理解函数的功能、使用范围,在设计说明书中要写清楚函数的功能和参数意义。

●完成自己课程设计说明书。

正文1、界面设计(1)在MATLAB命令窗口中输入“guide”,确定后,弹出GUI窗口。

(2)本次设计中,包含两个坐标轴(axes1、axes2),分别显示原图和处理后的图像。

包含六个按钮(Push Button),分别实现“打开图片、保存处理后的图片、旋转、平移、放大、缩小以及退出功能”。

(3)旋转功能同时可以实现选择0—360度任意的度数,当选择不同的度数后,axes2位置就会显示不同选择角度的图片。

如果需要保存该图片可以单击保存按钮进行保存。

(4)平移功能的实现,当单击平移按钮,可以有一个默认的平移位置。

在设计中预设了几个固定位置,可以选择,分别是X单位Y单位方向都可以选择。

达到平移的目的。

(5)放大和缩小功能类似,在界面上表现为选择不同的数据,反映出来不同大小的图片。

(6)操作完成后,点击退出功能,将询问是否退出,如果退出则点击“是”,不退出点击“我还要看看”。

MATLAB绘图与图形处理

MATLAB绘图与图形处理

MATLAB绘图与图形处理人们很难从一大堆原始的数据中发现它们的含义,而数据图形恰能使视觉感官直接感受到数据的许多内在本质,发现数据的内在联系。

MATLAB可以表达出数据的二维,三维,甚至四维的图形。

通过图形的线型,立面,色彩,光线,视角等属性的控制,可把数据的内在特征表现得淋漓尽致。

下面我们分别介绍图形的命令。

7.1 二维图形7.1.1 基本平面图形命令命令1 plot功能线性二维图。

在线条多于一条时,若用户没有指定使用颜色,则plot循环使用由当前坐标轴颜色顺序属性(current axes ColorOrder property)定义的颜色,以区别不同的线条。

在用完上述属性值后,plot又循环使用由坐标轴线型顺序属性(axes LineStyleOrder property)定义的线型,以区别不同的线条。

用法plot(X,Y) 当X,Y均为实数向量,且为同维向量(可以不是同型向量),X=[x(i)],Y=[y(i)],则plot(X,Y)先描出点(x(i),y(i)),然后用直线依次相连;若X,Y为复数向量,则不考虑虚数部分。

若X,Y均为同维同型实数矩阵,X = [X(i)],Y = [Y(i)],其中X(i),Y(i)为列向量,则plot(X,Y)依次画出plot(X(i),Y(i)),矩阵有几列就有几条线;若X,Y中一个为向量,另一个为矩阵,且向量的维数等于矩阵的行数或者列数,则矩阵按向量的方向分解成几个向量,再与向量配对分别画出,矩阵可分解成几个向量就有几条线;在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。

plot(Y) 若Y为实数向量,Y的维数为m,则plot(Y)等价于plot(X,Y),其中x=1:m;若y 为实数矩阵,则把y按列的方向分解成几个列向量,而y 的行数为n,则plot(Y)等价于plot(X,Y)其中x=[1;2;…;n];在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。

MATLAB图像处理基础

MATLAB图像处理基础

MATLAB图像处理基础2.2.1图像文件格式及图像类型1.MATLAB支持的几种图像文件格式:⑴JPEG(Joint Photogyaphic Expeyts Group):一种称为联合图像专家组的图像压缩格式。

⑵BMP(Windows Bitmap):有1位、4位、8位、24位非压缩图像,8位RLE (Run length Encoded)的图像。

文件内容包括文件头(一个BITMAP FILEHEADER数据结构)、位图信息数据块(位图信息头BITMAP INFOHEADER 和一个颜色表)和图像数据。

⑶PCX(Windows Paintbrush):可处理1位、4位、8位、16位、24位等图像数据。

文件内容包括文件头、图像数据和扩展色图数据。

⑷TIFF(Tagged Iamge File Format):处理1位、4位、8位、24位非压缩图像,1位、4位、8位、24位packbit压缩图像,1位CCITT压缩图像等。

文件内容包括文件头、参数指针表与参数域、参数数据表和图像数据四部分。

⑸PNG(Portable Network Graphics):包括1位、2位、4位、8位和16位灰度图像,8位和16位索引图像,24位和48位真彩色图像。

⑹GIF(Graphics Interchange Format):任何1位到8位的可交换的图像。

⑺HDF(Hierarchial Data Format):有8位、24位光栅图像数据集。

⑻ICO(Windows Icon resource):有1位、4位、8位非压缩图像。

⑼CUR(Windows Cursor resource):有1位、4位、8位非压缩图像。

⑽XWD(X Windows Dump):包括1位、8位Zpixmaps,XYBitmaps,XYPixmmmaps。

⑾RAS(Sun Raster image):有1位bitmap、8位索引、24位真彩色和带有透明度的32位真彩色。

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

第六章图形处理功能Chapter 6: The function of Image processing一.二维图形(Two dimensional plotting)1. 基本绘图函数(Basic plotting function):Plot, semilogx, semilogy, loglog, polar, plotyy (1). 单矢量绘图(single vector plotting):plot(y),矢量y的元素与y元素下标之间在线性坐标下的关系曲线。

例1:单矢量绘图y=[0 0.6 2.3 5 8.3 11.7 15 17.7 19.4 20]; plot(y)可以在图形中加标注和网格,例2:给例1 的图形加网格和标注。

y=[0 0.6 2.3 5 8.3 11.7 15 17.7 19.4 20]; plot(y)title('简单绘图举例'); xlabel('单元下标'); ylabel('给定的矢量'); grid(标注网格)(2). 双矢量绘图(Double vector plotting):如x和y是同样长度的矢量, plot(x,y)命令将绘制y 元素对应于x元素的xy曲线图。

例:双矢量绘图。

x=0:0.05:4*pi; y=sin(x); plot(x,y)(3). 对数坐标绘图(ploting in logarithm coordinate):x轴对数semilogx, y轴对数semilogy, 双对数loglog,例:绘制数组y的线性坐标图和三种对数坐标图。

y=[0 0.6 2.3 5 8.3 11.7 15 17.7 19.4 20];subplot(2,2,1); plot(y); subplot(2,2,2); semilogx(y)subplot(2,2,3); semilogy(y); subplot(2,2,4); loglog(y)(4)极坐标绘图( Plotting in polar coordinate):polar(theta,rho) theta—角度, rho—半径例:建立简单的极坐标图形。

t=0:.01:2*pi; polar(t,sin(2*t).*cos(2*t))2. 多重曲线绘图(Multiple curve plotting)(1)一组变量绘图(A group variable plotting)plot(x,y)(a) x为矢量,y为矩阵时plot(x,y)用不同的颜色绘制y矩阵中各行或列对应于x的曲线。

例1:x=0:pi/50:2*pi; y(1,: )=sin(x); y(2,:) =0.6*sin(x); y(3, :)=0.3*sin(x); plot(x,y)(b) x为矩阵,y为矢量时绘图规则与(a)的类似,只是将x中的每一行或列对应于y进行绘图。

例2: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=sin(x(1,: )); plot(x,y)(c) x和y是同样大小的矩阵时, plot(x,y)绘制y矩阵中各列对应于x各列的图形。

例3: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(:,1)); y(:,3 )=0.3*sin(x(:,1));plot(x,y)这里x和y的尺寸都是101×3,所以画出每条都是101点组成的三条曲线。

如行列转置后就会画出101条曲线,每条线由三点组成。

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(1,:)); y(3,:)=0.3*sin(x(1,:));plot(x,y)(d) 如果y是矩阵,则plot(y)绘出y中各列相对于行号的图形,对于n行矩阵,x轴的坐标为[1:n]。

(2)多组变量绘图( Multiple group variables plotting):对于一系列相应的矩阵yi和xi,可以使用多组变量绘图法:plot(x1,y1,x2,y2,…,xn,yn),这种方法的优点是允许将不同大小的矩阵或矢量的图形绘制在一张图上。

例:多组变量绘图。

x=0:pi/50:2*pi; y1=sin(x); y2=0.6*sin(x); y3=0.3*sin(x); plot(x,y1,x,y2,x,y3)(3)双y轴绘图:plotyy,在一个图形窗口绘制两组数据曲线,共用一个x轴,图形两边各有一个y轴。

两条图线可以调用不同的绘图方法。

例1:x=0:0.3:12; y=exp(-0.3*x).*sin(x)+0.5; plotyy(x,y,x,y,'plot','stem')左侧y轴对应plot形式的绘图,右侧y轴对应stem形式的曲线。

例2:对于y坐标不同的情况。

t=0:900; A=1000; a=0.005; b=0.005; z1=A*exp(-a*t); z2=sin(b*t);plotyy(t,z1,t,z2,'semilogy','plot')3. 图线形式和颜色(Style and color of plot)(1) 图线的形式: (style of plot)MATLAB提供的四种线形,实线虚线- - ,冒号线:,点划线-- .标记点类型:. , + , *, o, ×, s (或square), d (或diamond), △, ▽, <, >, p (或pentagram), h (或hexagram),plot(x,y,’—‘),plot(x1,y1,’:’,x2,y2,’*’)例1:选择不同的线形绘图。

t=0:pi/100:2*pi; y=sin(t); y2=sin(t-0.25); y3=sin(t-0.5);plot(t,y,'-',t,y2,'-',t,y3,':')例2:选择不同的标记点绘图。

t=0:pi/20:2*pi; x=t.^3; y=sin(t); plot(x,y,'o')(2) 线的颜色(color of plot):MA TLAB中可选的颜色:红r,绿g,蓝b, 黄y, 粉红m, 青c(cyan) 黑k.例:t=0:pi/20:2*pi;y=sin(t); plot(t,y,'r'), plot(t,y,'g+')(3) 图线的其他属性(other characters of plot):可设置图线的宽度、标记点的边缘颜色、填充颜色、标记点的大小等。

例:设置图线的线形、颜色、宽度、标记点的颜色及大小。

t=0:pi/20:pi; y=sin(4*t).*sin(t)/2;plot(t,y,'-bs','LineWidth',2,'MarkerEdgeColor','k', 'MarkerFaceColor', 'y','MarkerSize',10)4. 复数绘图(Complex plotting): plot用于函数绘制复数的图形时,通常虚部是被忽略的。

但plot只作用于单个复变量z时,则绘出的是实部对虚部的关系图(复平面上的一组点)。

即这时plot(z)等价于plot(real(z)).例:画一个20 边的多边形(用exp函数生成),顶角用小圆圈表示。

t=0:pi/10:2*pi; plot(exp(i*t),'o'); axis('square')如果在复平面绘制多重线,只能分别以实部和虚部为坐标来绘制,否则虚部将被忽略,并给出警告。

二.图形的控制与表现(Figure control and representation)MATLAB提供的用于图形控制的函数和命令:axis: 人工选择坐标轴尺寸.clf:清图形窗口.ginput:利用鼠标的十字准线输入.hold:保持图形.shg:显示图形窗口.subplot:将图形窗口分成N块子窗口。

1.图形窗口(figure window)(1). 图形窗口的创建和选择(Creating and selecting of figure window)figure(n)函数用于为当前的绘图创建图形窗口,每运行一次figure就会创建一个新的图形窗口,n表示第个n窗口,如果窗口定义了句柄,也可以用figure(h)将句柄h的窗口作为当前窗口。

clf 命令用于清除当前图形窗口中的内容。

shg命令用于显示当前图形窗口。

(2). 在一个图形窗口中绘制多个子图形(Drawing several subfigures in a single window) subplot(m,n,p), 把窗口分成m×n个小窗口,并把第p个窗口当作当前窗口。

例:将4 个图形显示在同一个图形窗口中。

t=0:pi/20:2*pi; [x,y]=meshgrid(t);subplot(2,2,1); plot(sin(t),cos(t)); axis equalsubplot(2,2,2); z=sin(x)+cos(y); plot(t,z); axis([0 2*pi –2 2])subplot(2,2,3); z=sin(x).*cos(y); plot(t,z); axis([0 2*pi –1 1])subplot(2,2,4); z=sin(x).^2-cos(y).^2; plot(t,z); axis([0 2*pi –1 1])(3). 在一个已有的图形上绘图(Drawing a figure on the figure was existed):用hold on命令在一个已有的图形上继续绘图,使用hold off命令结束继续绘图。

例:将peaks函数的等高线图与伪彩色画在一起。

[x,y,z]=peaks; %产生双变量数组contour(x,y,z,20,'k') %绘制等高线hold onpcolor(x,y,z) %绘制伪彩色图shading interp %表面色彩渲染hold off2.坐标轴控制命令(Axis control commands)控制坐标性质的axis函数的多种调用格式:axis(xmin xmax ymin ymax):指定二维图形x和y轴的刻度范围,axis auto 设置坐标轴为自动刻度(缺省值)axis manual(或axis(axis))保持刻度不随数据的大小而变化axis tight 以数据的大小为坐标轴的范围axis ij 设置坐标轴的原点在左上角,i为纵坐标,j为横坐标axis xy 使坐标轴回到直角坐标系axis equal 使坐标轴刻度增量相同axis square 使各坐标轴长度相同,但刻度增量未必相同axis normal 自动调节轴与数据的外表比例,使其他设置失效axis off 使坐标轴消隐axis on 显现坐标轴(1) 坐标轴的范围(Domain of coordinates axis):二维图形坐标轴范围在缺省状态下是根据数据的大小自动设置的,如欲改变,可利用axis(xmin xmax ymin ymax),函数来定义。

相关文档
最新文档