
? axis(v)%注意该语句必须在图形显示语句的后面
说明:二维图形是类似的。
例2、axis(‘控制字符串’):可以选择
不同的字符串完成对坐标轴的操作。
控制字符串有:
(1)auto:自动模式,使得图形的坐标范围满足图中一切图元素。
(2)axis:将当前坐标设置固定,使
用hold命令后,图形仍以此作为坐标界限。
(3)manual:以当前的坐标限定绘制。
(4)tight:将坐标限控制在指定的数据范围内。
(5)equal:使坐标轴分度相等。
(6)off:取消对坐标轴的一切设置,包括系统的自动设置。
(7)on:恢复对坐标轴的一切设置。
? [x,y]=meshgrid(-1:0.1:1,-1:0.1:1);
? z=x.^2+y.^2;
? surf(x,y,z)
? box on
17、基本二维图形
? plot:线性绘图。
? loglog:双对数坐标图。
? semilogx:半对数(x)坐标图。
? semilogy:半对数(y)坐标图。
? polar:极坐标图。
? subplot:分割图窗
? refline(slope,intercept):加参考线
18、图形注解
? legend:图形标签.
? xlable:x轴标签。
? ylable:y轴标签。
? title:图形题目。
? text:文字注解。
19、特殊二维图形
? bar:条形图。
? barh:水平柱图。
? ezplot:符号函数图。
? fplot:绘制字符串指定的函数名的函数图。如fplot(‘sin(x)’,[2,3])。
? pie:饼图。
? plotmatrix:绘矩阵点图。
? stem:2维火柴杆图。
? stem3:3维火柴杆图。
20、等高线图和向量图
? contour:等高线图。
? contour3:三维等高线图。
? quiver:向量图。
例
[x,y] = meshgrid(-2:.2:2,-1:.15:1);
z = x .* exp(-x.^2 - y.^2);
[px,py] = gradient(z,2);
contour(x,y,z),
hold on
quiver(x,y,px,py)
hold off
21、特殊三维图形
? comet3:三维彗星轨线(comet(x,y)画二维彗星线)。
t = -10*pi:pi/500:10*pi
comet3(sin(t),cos(t),t)
? meshc(x,y,z):画出三维网格与等高线 图,类似sutfc。
? meshz(x,y,z):增加边界面屏蔽。
? stem3:三维火柴干图。
? 例 a=rand(3);
stem3(a);
22、固体模型
? cylinder:生成圆柱。格式为[x,y,z]= cylinder(r,n),r为母线半 径,N为显示的母线条数 mesh(x,y,z)或surf(x,y,z)显示单位 高度柱面。
t = -1*pi:pi/20:1*pi;
r=5+cos(t);
[x,y,z]=cylinder(r,30)
surf(x,y,z)
? sphere: 生成单位球面。例
[x,y,z]=sphere(40) %40为子午线条 数,sphere默认为20条。
mesh(x,y,z)或surf(x,y,z) %画球面
axis(‘equal’) %坐标轴刻度相同
例、绕地球运动的飞行物
? [x,y,z]=sphere(50);
? mesh(x,y,z);
? hold on
? v=[-6,6,-6,6,-6,6];
? axis(v);
? axis('off')
? t= 0:pi/1000:200*pi;
? x=6*sin(t);
? y=2*cos(t);
? z=zeros(size(t));
? comet3(x,y,z)
23、四维表现图
对于三维图形自变量是二维的,对于三个自变量的函数w=fx,y,z),其其图形应该是四维的,由于我们所处的空间和思维的局限性,在计算机屏幕上只能表现出三维空间。为了表现四维图像,可利用三维实体的四维切片色图,用三维实体上的颜色来描述函数值的变化情况。
? MATLAB中用slice函数来完成
(1)slice(x,y,z,w,sx,sy.sz):绘制向量sx,sy,sz中的点沿x,y,z轴方向的切片图,v的大小决定了每一点的颜色。
(2)slice(x,y,z,w,x1,y1,z1):按数组x1,y1,z1切片(按坐标轴单位)。
(3)slice(w,x1,y1,z1):按数组x1,y1,z1切片(按x,y,z的网格单位进行切片。
(4)slice(w,sx,sy,sz):按x,y,z的网格单位进行切片。
例、程序如下:
[x,y,z]=meshgrid(-2:0.2:2,-2:0.25:2,-2:0.16:2);
w=x.^2+y.^2+z.^2;
%slice(x,y,z,a,x,y,z)
x1=1:15;
y1=1:10;
z1=1:10
subplot(2,2,1),slice(x,y,z,w,1,1,[0,1]);
subplot(2,2,2),slice(w,1,1,[0,1]);
subplot(2,2,3),slice(x,y,z,w,x1,y1,z1);hold on
subplot(2,2,4),slice(w,x1,y1,z1);
colorbar %色轴,它可以标注颜色与数值之间的关系
24、数据文件
(1)Save(‘x1’,‘变量1’,‘变量2’,…):把变量1,变量2,…的数据保存到名字为x1.mat的数据文件中;当变量缺省时,保存所有变量的数据。数据文件自己起名字,变量为程序中的已赋值的变量。
请看下面例子
w='XingtaiCollege'
x=[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1];
y=[0.002,0.114,0.189,0.316,0.394,0.434,0.427,0.409,0.379,0.327,0.254];
a=x'*y;
save(‘x1’)%所有的变量全部保存
save(‘x2’,‘w’)%只保存w变量的数据
save('x3','w','x') %保存w,x变量的数据
save(‘x4’,‘w’,‘x’,‘y’,‘a’) %保存w,x,y,a变量的数据
%用load(‘文件名’)可把数据文件调入内存。
25、时间函数
(1)calendar:返回当前日历
(2)calendar(year, month):反回指定的年月日历。
(3) calendar(data):返回公元0000年算起的天数(data)的日历。
(4)cputime:以秒返回cpu当前时间。
(5)tic,toc启用、关闭计时器。
(6)clock: [year month day hour minute seconds]
%计算运行程序所用的时间
? t1=clock
? ….
? t2=clock
? etime(t2,t1)%elapsed time from t1 to t2或者
? tic%打开计时器
? …
? toc%关闭计时器,且显示所用的时间
? 或者
? T1=cputime
? …
? T2=cputime
? E=T2-t1
说明:通过计算程序所用的时间可以来
衡量解决同样的一个问题的所编写的不
同程序的优劣。
例1、
? t1=clock;
? for k=1:m
? x0=[1;0];
? T=0.2;
? m=1000;
? f=inline('[-sin(t);cos(t)]');
? x1=x0+f((k-1)*T)*T;
? x0=x1;
? x(k)=x1(1);
? y(k)=x1(2);
? end
? comet(x,y)
? t2=clock;
? t=etime(t2,t1)
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删