- 2
- 0
- 约2.68千字
- 约 7页
- 2019-04-05 发布于湖北
- 举报
Matlab绘图
强大的绘图功能是matlab的特点之一。Matlab提供了一系列的绘图函数,用户不需过多考虑绘图细节,只需给出一些基本参数就能得到所需图形,这一类函数称为高层绘图函数。除此之外,matlab还提供了直接对图形句柄进行操作的低层绘图操作。这类操作将图形的每个图形元素(如坐标轴,曲线或文字等)看做是一个独立的对象,系统给每个图形对象分配一个句柄,以后可以通过该句柄对该图形元素进行操作,而不影响图形的其他部分。高层绘图操作简单明了,方便高效,是用户最常使用的绘图方法,而低层绘图操作控制和表现图形的能力更强,为用户更加自主地绘制图形创造了条件。事实上,matlab的高层绘图函数都是利用低层绘图函数而建立起来的。
本文主要介绍绘制三维和四维图形的高层绘图函数以及其他图形函数的使用方法,在此基础上,再介绍可以操作和控制各种图形对象的低层绘图操作。
绘制三位曲线的基本函数
最基本的三维图形函数为plot3,它将二维绘图函数plot的有关功能扩展到三维空间,可用来绘制三维曲线。Plot3函数与plot函数用法十分相似,其调用格式为:
Plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,….,xn,yn,zn,选项 n)
其中每一组x,y,z组成一组曲线的坐标参数,选项的定义和plot函数相同。当x,y,z是同维向量时,则x,y,z对应元素构成一条三维曲线。当x,y,z是同维矩阵时,则以x,y,z对应列元素绘制三位曲线,曲线条数等于矩阵列数。
绘制空间曲线:
SKIPIF 1 0
曲线所对应的参数方程为:
SKIPIF 1 0 SKIPIF 1 0
程序如下:
t=0:pi/50:2*pi;
x=8*cos(t);
y=4*sqrt(2)*sin(t);
z=-4*sqrt(2)*sin(t);
plot3(x,y,z,p);
title(Line in 3-D Space);
text(0,0,0,origin);
xlabel(X),ylabel(Y),zlabel(Z);grid;
结果如下图所示:
绘制三维曲面的函数
Matlab提供了mesh函数和surf函数来绘制三维曲面图。mesh函数用于绘制三维网格图。在不需要绘制特别精细的三维曲面图时,可以通过三维网格图来表示三维曲面。Surf用于绘制三维曲面图,各线条之间的补面用颜色填充。surf函数和mesh函数的调用格式为:
mesh(x,y,z,c)
surf(x,y,z,c)
例2.用三维曲面图表现函数z=sinycosx.
程序如下:
x=0:0.1:2*pi;
[x,y]=meshgrid(x);
z=sin(y).*cos(x);
surf(x,y,z);
xlabel(x-axis),ylabel(y-axis),zlabel(z-axis);
title(surf);
结果如下图:
色彩处理
1.颜色的向量表示
Matlab除用字符表示颜色外,还可以用含有3个元素的向量表示颜色。向量元素在[0,1]范围取值,3个元素分别表示红,绿,蓝3种颜色的相对亮度,称为RGB三元组。下表列出了几种常见的RGB值。
RGB
颜色
字符
【0,0,1】
蓝色
b
【0,1,0】
绿色
g
【1,0,0】
红色
r
【0,1,1】
青色
c
【1,0,1】
品红色
m
【1,1,0】
黄色
y
【0,0,0】
黑色
k
【1,1,1】
白色
w
【0.5,0.5,0.5】
灰色
【0.67,0,1】
紫色
【1,0.5,0】
橙色
【1,0.62,0.40】
铜色
【0.49,1,0.83】
宝石蓝
几种常见颜色的RGB值
2.色图
色图(Color Map)是matlab系统引入的概念。在matlab中,每个图形窗口只能有一个色图。色图是 SKIPIF 1 0 的数值矩阵,它的每一行是RGB三元组。色图矩阵可以人为地生成,也可以调用matlab提供的函数来定义色图矩阵。表二列出了定义色图矩阵的函数,色图矩阵的维数由函数调用格式决定。例如:
M=hot;
生成 SKIPIF 1 0 色图矩阵M,表示的颜色是从黑色,红色,黄色到白色的由浓到淡的颜色。又如:P=gray(100);
生成 SKIPIF 1 0 色图矩阵P,表示的颜色是灰色由浓到淡。
函数名
含义
函数名
含义
autumn
红,黄浓淡色
jet
蓝头红尾饱和值色
bone
蓝色调浓淡色
lines
采用plot绘线色
colorcube
三浓淡多彩交错色
pink
淡粉色色图
cool
青,品红浓淡色
原创力文档

文档评论(0)