MATLAB stem3()函数的用法(附带实例)
在三维情况下,绘制火柴杆图的 MATLAB 函数为 stem3(),它的调用格式及说明如下表所示。
【实例 1】绘制下面函数的火柴杆图。
MATLAB 程序如下:

图 1 三维火柴杆图
【实例 2】绘制 ex、sinx、cosx 的火柴杆图。MATLAB 程序如下:

图 2 函数的三维火柴杆图
调用格式 | 说明 |
---|---|
stem3(Z) | 用火柴杆图显示 Z 中数据相对于 xy 平面的高度。若 Z 为一行向量,则 x 与 y 将自动生成,stem3 将在与 x 轴平行的方向上等距的位置上画出 Z 的元素;若 Z 为列向量,stem3 将在与 y 轴平行的方向上等距的位置上画出 Z 的元素 |
stem3(X,Y,Z) | 在参数 X 与 Y 指定的位置上画出 Z 的元素,其中 X、Y、Z 必须为同型的向量或矩阵 |
stem3(...,'filled') | 指定是否要填充火柴杆图末端的火柴头颜色 |
stem3(...,LineSpec) | 用参数 LineSpec 指定的线型、标记符号和火柴头的颜色画火柴杆图 |
stem3(...,Name,Value) | 使用一个或多个名称-值对组参数修改火柴杆图 |
stem3(ax,...) | 在 ax 指定的坐标区中绘制图形,而不是当前坐标区(gca)中 |
h = stem3(...) | 返回火柴杆图的 line 图形对象句柄 |
【实例 1】绘制下面函数的火柴杆图。

MATLAB 程序如下:
>> close all % 关闭当前已打开的文件 >> clear % 清除工作区的变量 >> t=-20*pi:pi/100:20*pi; % 创建-20π~20π的向量x,元素间隔为π/100 >> x=sin(t); % 利用参数符号t定义函数表达式x >> y=cos(2*t); % 利用参数符号t定义函数表达式y >> z=t.*sin(t).*cos(2*t); % 利用参数符号t定义函数表达式z >> stem3(x,y,z,'fill','m') % 绘制三维火柴杆图,设置填充颜色为品红色 >> title('三维火柴杆图') % 添加标题运行结果如下图所示:

图 1 三维火柴杆图
【实例 2】绘制 ex、sinx、cosx 的火柴杆图。MATLAB 程序如下:
>> close all % 关闭当前已打开的文件 >> clear % 清除工作区的变量 >> X = linspace(-pi/2,pi/2,40); % 创建-π/2~π/2的向量X,元素个数为40 >> Z = [exp(X);sin(X);cos(X)]; % 定义函数矩阵Z % 绘制函数三维火柴杆图,曲线样式为冒号,标记样式为正方形,颜色为蓝色 >> stem3(Z,':diamondb') >> title('函数的三维火柴杆图') % 添加标题运行结果如下图所示:

图 2 函数的三维火柴杆图