1.创建绘图
plot
函数具有不同的形式,具体取决于输入参数。
• 如果
y
是向量,
plot(y)
会生成
y
元素与
y
元素索引的分段线图。
• 如果有两个向量被指定为参数,
plot(x,y)
会生成
y
对
x
的图形。
使用冒号运算符创建从
0
至
2
π
的
x
值向量,计算这些值的正弦,并绘制结果。
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)
添加轴标签和标题。
xlabel
函数中的字符
\pi
用于创建符号
π
。
title
函数中的
FontSize 属性用于增大标题所用的文本大小。
xlabel('x = 0:2\pi')
ylabel('Sine of x')
title('Plot of the Sine Function','FontSize',12)
2绘制多个图形
通过调用一次 plot
,多个
x-y 对组参数会创建多幅图形。MATLAB® 对每条线使用不同的颜色。 例如,下列语句绘制
x
的三个相关函数:
x = 0:pi/100:2*pi;
y = sin(x);
y2 = sin(x-.25);
y3 = sin(x-.5);
plot(x,y,x,y2,x,y3)
legend
函数提供了一种标识各条线的简单方法:
legend('sin(x)','sin(x-.25)','sin(x-.5)')
3指定线型和颜色
使用
plot
命令绘制数据时,可以指定颜色、线型和标记(例如加号或圆圈):
plot(x,y,'color_style_marker')
color_style_marker 包含一至四个字符(包括在单引号中),这些字符根据颜色、线型和标记类型构造而成。例如,
plot(x,y,'r:+')
使用红色点线绘制数据,并在每个数据点处放置一个
+ 标记。color_style_marker
由下列元素的组合形式构成。
4绘制线条和标记
如果指定标记类型,但未指定线型,MATLAB 仅使用标记创建图形,而不会创建线条。例如,
plot(x,y,'ks')
在每个数据点绘制黑色正方形,但不会使用线条连接标记。语句
plot(x,y,'r:+')
绘制红色点线,并在每个数据点处放置加号标记。
5在每十个数据点处放置标记
此示例展示如何使用比绘制线条所用的数据点更少的数据点来绘制标记。它使用点线图和标记图(分别采用不同数目的数据点)绘制两次数据图:
x1 = 0:pi/100:2*pi;
x2 = 0:pi/10:2*pi;
plot(x1,sin(x1),'r:',x2,sin(x2),'r+')
6绘制虚数和复数数据
将多个复数值作为参数传递给
plot 时,MATLAB 会忽略虚部,但传递一个复数参数时除外。对于这一特殊情况,该命令是绘制虚部对实部的图的一种快捷方式。因此,
plot(Z)
其中
Z
是复数向量或矩阵,等效于
plot(real(Z),imag(Z))
下列语句将绘制一个具有 20 条边的多边形,并在各顶点处绘制一个小圆圈。
t = 0:pi/10:2*pi;
plot(exp(1i*t),'-o')
axis equal
axis equal
命令使 x 和 y 轴上的各刻度线增量的长度相同,这会使此绘图看起来更加圆润。
7将绘图添加到现有图形中
hold
命令用于将绘图添加到现有图形中。当键入
hold
on
时,MATLAB 不会在您发出其他绘图命令时替换现有图形。MATLAB 而会将新图形与当前图形合并在一 起。例如,下列语句首先创建
peaks
函数的曲面图,然后叠加同一函数的等高线图:
[x,y,z] = peaks;
% Create surface plot
surf(x,y,z)
% Remove edge lines a smooth colors
shading interp
% Hold the current graph
hold on
% Add the contour graph to the pcolor graph
contour3(x,y,z,20,'k')
% Return to default
hold off
8图窗窗口
如果尚未创建图窗窗口,绘图函数会自动打开一个新的图窗窗口。如果打开了多个图窗窗口,MATLAB 将使用指定为“当前图窗”(通常为上次使用的图窗)的图窗窗口。
要将现有图窗窗口设置为当前的图窗,请将指针放置在该窗口中并点击鼠标,或者也可以键入
figure(n)
其中
n 是图窗标题栏中的编号。要打开新的图窗窗口并将其作为当前图窗,请键入
figure
9清空图窗以便创建新绘图
如果某图窗已存在,大多数绘图命令会清除轴并使用此图窗创建新绘图。但是,这些命令不会重置图窗属性,例如,背景色或颜色图。如果已在以前的绘图中设置图窗属性,您可以先使用带有
reset
选项的
clf
命令。
clf reset
然后创建新绘图,以便将此图窗的属性恢复为其默认值。
9在一幅图窗中显示多个绘图
subplot
命令用于在同一窗口中显示多个绘图,或者在同一张纸上打印这些绘图。键入以下命令
subplot(m,n,p)
会将图窗窗口划分为由多个小子图组成的
m
×
n
矩阵,并选择第 p 个子图作为当前绘图。这些绘图沿图窗窗口的第一行进行编号,然后沿第二行进行编号,依此类推。例如,下列语句在图窗窗口的三个子区域绘制数据:
x = 0:pi/20:2*pi;
subplot(3,1,1); plot(sin(x))
subplot(3,1,2); plot(cos(x))
subplot(3,1,3); plot(sin(x).*cos(x))
10控制轴
axis
命令提供了许多用于设置图形的比例、方向和纵横比的选项。
10.1自动改变坐标轴范围和刻度线
默认情况下,MATLAB 查找数据的最大值和最小值,并选择坐标轴范围来覆盖此范围。MATLAB 选择范围和轴刻度线值,以便生成可清楚地显示数据的图形。但是,您可以使用
axis
或
xlim
、
ylim
与
zlim 函数来设置您自己的范围。
注意 更改一个轴的范围可能会导致其他范围也发生更改,从而更好地表示数据。要禁用自动范围设置,请输入
axis manual
命令。
10.2设置坐标轴范围
axis
命令用于指定您自己的范围:
axis([xmin xmax ymin ymax])
或者对于三维图形,
axis([xmin xmax ymin ymax zmin zmax])
请使用命令
axis auto
重新启用自动范围选择。
10.3设置轴纵横比
axis
命令还可用于指定多种预定义模式。例如,
axis square
使 x 轴和 y 轴的长度相同。
axis equal
使 x 轴和 y 轴上的各个刻度线增量的长度相同。这意味着
plot(exp(1i*(0:pi/10:2*pi)))
(后跟
axis square
或
axis equal
)会将椭圆形转变为正圆:
axis auto normal
将轴比例恢复为其默认的自动模式。
10.4设置轴可见性
使用
axis
命令可以显示或隐藏轴。
axis on
显示轴。这是默认设置。
axis off
隐藏轴。
10.5设置网格线
grid
命令启用和禁用网格线。语句
grid on
启用网格线,而
grid off
再次禁用网格线。
10.6添加轴标签和标题
此示例展示如何创建图形并增强其显示:
• 定义 x 和 y 轴的范围 (
axis
)
• 对 x 和 y 轴添加标签(
xlabel
、
ylabel
)
• 添加标题 (
title
)
• 在图形中添加文本附注 (
text
)
使用 LaTeX 表示法生成数学符号。如需关于在图形中放置箭头、方框和圆圈的信息,请参阅
annotation
函数。
11保存图窗
通过从
文件
菜单中选择
保存来保存图窗。这会将图窗写入到文件,包括属性数据、图窗菜单、uicontrol 和所有注释(即整个窗口)。如果这个图窗以前未被保存过,
另存为对话框则会出现。此对话框提供用于将图窗另存为
.fig
文件或将其导出为图形格式的选项。
如果以前保存过这个图窗,再次使用
保存
会以“静默”方式保存图窗,而
另存为
对话框不会出现。
要使用标准图形格式(例如,TIFF 或 JPG)保存图窗以便用于其他应用程序,请从
文件
菜单中选择
另存为
(如果需要其他控件,则选择
导出设置
)。
注意 当指定保存图窗的格式时,下次保存该图窗或新图窗时,将再次使用该文件格式。如果您不希望按以前使用的格式保存,请使用
另存为
,并确保将
保存类型下拉菜单设置为要写入的文件类型。也可通过以下命令行进行保存:
• 使用
savefig
函数将图窗及其包含的图形对象保存为
.fig
文件。
• 使用包含任意选项的
saveas
命令,以各种格式保存图窗。
11.1加载图窗
您可以使用以下函数将图窗加载到 MATLAB:
• 使用
openfig
函数加载保存为
.fig
文件的图窗。
• 使用
imread
函数将标准图形文件(包括保存图窗)读入到 MATLAB 中。
11.2生成 MATLAB 代码以便再建图窗
通过从图窗
文件
菜单中选择
生成代码,可以生成用于再建图窗及其所包含的图形的 MATLAB 代码。如果您已使用绘图工具创建图形,并且希望使用相同或不同数据创建类似图形,此选项尤其有用。
12保存工作区数据
通过从图窗
文件
菜单中选择
将工作区另存为
,可以保存工作区中的变量。使用图窗
文件
菜单中的
导入数据项可以重新加载保存的数据。MATLAB 支持多种数据文件格式,包括 MATLAB 数据文件,该数据文件的扩展名为
.mat
。