MATLAB stem():绘制离散序列图(附带实例)
在科学研究中,可以用离散序列图来表示离散量的变化情况。在 MATLAB 中,利用 stem() 函数可绘制离散序列图,该函数的调用格式如下:
【实例 1】绘制一幅离散序列图。在编辑器中编写以下程序并运行。

图 1 绘制的离散序列图(1)
【实例 2】绘制一个线型为圆圈的离散序列图。在编辑器中编写以下程序并运行。

图 2 绘制的离散序列图(2)
【实例 3】绘制一幅离散序列图。在编辑器中编写以下程序并运行。

图 3 离散序列图
stem(y) % 以 x=1,2,3,...作为各个数据点的 x 坐标,以向量 y 的值为 y 坐标,在 (x,y) 坐标点画一个空心小圆圈,并连接一条线段到 x 轴 stem(x,y,'option') % 以 x 向量的各个元素为 x 坐标,以 y 向量的各个对应元素为 y 坐标,在 (x,y) 坐标点画一个空心小圆圈,并连接一条线段到 x 轴,option 选项表示绘图时的线型、颜色等设置 stem(x,y,'filled') % 以 x 向量的各个元素为 x 坐标,以 y 向量的各个对应元素为 y 坐标,在 (x,y) 坐标点画一个空心小圆圈,并连接一条线段到 x 轴
【实例 1】绘制一幅离散序列图。在编辑器中编写以下程序并运行。
figure t=linspace(-2*pi,2*pi,10); h=stem(t); set(h(1),'MarkerFaceColor','blue')运行程序后,输出如下图所示的图形:

图 1 绘制的离散序列图(1)
【实例 2】绘制一个线型为圆圈的离散序列图。在编辑器中编写以下程序并运行。
clf x=0:25; y=[exp(-.07*x).*cos(x); exp(.05*x).*cos(x)]; h=stem(x,y); set(h(1),'MarkerFaceColor','blue') set(h(2),'MarkerFaceColor','red','Marker','square')运行程序后,输出如下图所示的图形:

图 2 绘制的离散序列图(2)
【实例 3】绘制一幅离散序列图。在编辑器中编写以下程序并运行。
x=0:0.05:3; y=(x.^0.4).*exp(-x); stem(x,y)运行程序后,输出如下图所示的图形:

图 3 离散序列图