MATLAB的图形绘制

MATLAB除了强大的数值分析功能外,还具有方便的绘图功能。利用MATLAB丰富的二维、三维图形函数和多种修饰方法,只要指定绘图方式并提供绘图数据,就可以绘制出理想的图形。由于MATLAB的图形系统是建立在诸如线、面等图形对象的集合基础之上,因此用户可以对任何一个图形元素进行单独的修改,而不影响图形的其他部分。

二维图形的绘制

基本绘图命名

MATLAB中最常用的绘图函数为plot(),它是用于绘制二维曲线的,根据函数输入参数不同,常用的几种调用格式如下表所示。其中,'option’用来设置曲线属性的选项,其内容主要包括诸如颜色、线型、标记类型等曲线属性。'option’选项并不是必需项,若缺少该项,MATLAB将按系统默认格式统一安排各条曲线的属性值。
image.png
MATLAB提供了三种’option’选项以供修改:Line style线类型,Marker symbol标记符号,Color颜色。下表列出了’option’选项的属性。
image.png
有时会对图形的绘制进行一些修饰,MATLAB提供了多种图形函数,用于图形的修饰。常用的图形修饰函数名称及其功能说明如下表所示。
image.png
MATLAB提供了一系列专门的图形窗口控制函数,通过这些函数,可以创建或者关闭图形窗口,可以同时打开几个窗口,也可以在一个窗口内绘制若干子图。这些函数及其功能说明如下表所示。
image.png

实例

用三种不同的线型、标记符号和颜色分别绘制正弦、余弦、正切曲线曲线。

figure
x = 0: pi/20 : 2*pi;  % x = a : b : c 指从a开始,步长为b,终值为c的数组。
y1 = sin(x);
y2 = cos(x);
y3 = tan(x);
plot(x,y1,'-rs', x,y2,'-.kv', x,y3,':bd')
axis([0,2*pi,-1,1])
xlabel('弧度值')
ylabel('函数值')
title('绘制曲线');
legend('y1','y2','y3');

image.png

特殊二维曲线绘制


除了标准的二维曲线绘制之外,MATLAB还提供了多种具有特殊意义的图形绘制函数,其常用调用格式如下表所示。其中,参数x和y分别表示x轴、y轴绘图数据。
image.png

实例

已知y=ex,分别用上表中的六种绘图方式显示x和y的关系。

x = -4 : 0.5 : 4  % 指从a开始,步长为b,终值为c的数组。
y = exp(x)

figure(1)
bar(x,y)
title('bar(x,y)')

figure(2)
stem(x,y)
title('stem(x,y)')

figure(3)
stairs(x,y)
title('staiars'(x,y)')

figure(4)
polar(x,y)
title('polar(x,y)')

figure(5)
loglog(x,y)
title('loglog(x,y)')

figrue(6)
area(x,y)
title('area'(x,y)')

image.png


image.pngimage.png
image.pngimage.pngimage.pngimage.png

三维图形的绘制

三维曲线的绘制


三维曲线的绘制与二维曲线的绘制方法基本一致。常用的调用格式如下:image.png

plot3(x,y,z,'option')
plot3(x1,y1,z1,'option1', x2,y2,z2,'option2', ....)

其中,x、y、z所给出的数据分别为x、y、z坐标值,'option’为选项参数,plot3命令中参数的含义与plot命令类似,只是多了一个z方向的参数。

实例

绘制三维火柴杆型螺旋线。

z = 0 : pi/20 : 2*pi;
x = sin(z);
y = cos(z)
stem3(x ,y , z)
xlabel('sin(z)')
ylabel('cos(z)')
zlabel('z')
grid on

image.png

三维曲面的绘制

三维曲面方程存在两个自变量x、y和一个因变量z。因此,绘制三维曲面图形必须先在xy平面上建立网络坐标,每一个网络坐标点,和它对应的z坐标所确定的一组三维数据就定义了曲面上的一个点。三维曲面绘制中,常用的3个函数及其功能说明如下表所示。
image.png

实例

用mesh和surf两个函数分别绘制z=-x2-y2,x的范围限定在[-2,2], y的范围限定在[-2,2]。

x = -2 : 0.1 : 2;
y = -2 : 0.1 : 2;
[X, Y] = meshgrid(x,y);
Z = -(X.^2 + Y.^2);
figure(1)
mesh(X, Y, Z)  % 网格曲面
figure(2)
surf(X, Y, Z)  % 阴影曲面

image.png

原文地址:https://www.cnblogs.com/sinlearn/p/12910182.html