Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

二维图和三维图

线图

要创建二维线图,请使用 plot 函数。例如,绘制从 0 到 2π 的正弦函数值:

x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)

Figure contains an axes. The axes contains an object of type line.

可以标记轴并添加标题。

xlabel('x')
ylabel('sin(x)')
title('Plot of the Sine Function')

Figure contains an axes. The axes with title Plot of the Sine Function contains an object of type line.

通过向 plot 函数添加第三个输入参数,您可以使用红色虚线绘制相同的变量。

plot(x,y,'r--')

Figure contains an axes. The axes contains an object of type line.

'r--'线条设定。每个设定可包含表示线条颜色、样式和标记的字符。标记是在绘制的每个数据点上显示的符号,例如,+o*。例如,'g:*' 请求绘制使用 * 标记的绿色点线。

请注意,为第一幅绘图定义的标题和标签不再被用于当前的图窗窗口中。默认情况下,每次调用绘图函数、重置坐标区及其他元素以准备新绘图时,MATLAB® 都会清空图窗。

要将绘图添加到现有图窗中,请使用 hold on。在使用 hold off 或关闭窗口之前,当前图窗窗口中会显示所有绘图。

x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)

hold on

y2 = cos(x);
plot(x,y2,':')
legend('sin','cos')

hold off

Figure contains an axes. The axes contains 2 objects of type line. These objects represent sin, cos.

三维绘图

三维图通常显示一个由带两个变量的函数(即 z = f (x,y))定义的曲面图。

要计算 z,请首先使用 meshgrid 在此函数的域中创建一组 (x,y) 点。

[X,Y] = meshgrid(-2:.2:2);                                
Z = X .* exp(-X.^2 - Y.^2);

然后,创建曲面图。

surf(X,Y,Z)

Figure contains an axes. The axes contains an object of type surface.

surf 函数及其伴随函数 mesh 以三维形式显示曲面图。surf 使用颜色显示曲面图的连接线和面。mesh 生成仅以颜色标记连接定义点的线条的线框曲面图。

子图

使用 subplot 函数可以在同一窗口的不同子区域显示多个绘图。

subplot 的前两个输入表示每行和每列中的绘图数。第三个输入指定绘图是否处于活动状态。例如,在图窗窗口的 2×2 网格中创建四个绘图。

t = 0:pi/10:2*pi;
[X,Y,Z] = cylinder(4*cos(t));
subplot(2,2,1); mesh(X); title('X');
subplot(2,2,2); mesh(Y); title('Y');
subplot(2,2,3); mesh(Z); title('Z');
subplot(2,2,4); mesh(X,Y,Z); title('X,Y,Z');

Figure contains 4 axes. Axes 1 with title X contains an object of type surface. Axes 2 with title Y contains an object of type surface. Axes 3 with title Z contains an object of type surface. Axes 4 with title X,Y,Z contains an object of type surface.