Matlab离散序列数据绘图函数stem

文章目录(展开/隐藏→)

展开
4.3
(3)

今天,带来Matlab中离散序列数据的绘图函数stem使用方法。本文主要讲解stem函数在Matlab中的常见用法、语法说明、单数据序列得绘制、多个数据序列得绘制、在指定的位置绘制单个数据序列、在指定的位置绘制多个数据序列、在唯一的位置集合处绘制多个数据序列、填充图标记、指定针状线条和标记选项、指定其他针状线条和标记选项、指定针状图的坐标区、创建后修改针状序列、调整基线属性以及更改基线级别等用法详解。

Matlab离散序列数据绘图函数stem

下面,我们将开始详细的介绍stem函数的语法介绍,实例引用,结果展示。首先,我们给出 Matlab 中关于 stem 函数的帮助文本如下:

>> help stem
 stem   Discrete sequence or "stem" plot.
    stem(Y) plots the data sequence Y as stems from the x axis
    terminated with circles for the data value. If Y is a matrix then
    each column is plotted as a separate series.
 
    stem(X,Y) plots the data sequence Y at the values specified
    in X.
 
    stem(...,'filled') produces a stem plot with filled markers.
 
    stem(...,'LINESPEC') uses the linetype specified for the stems and
    markers.  See PLOT for possibilities.
 
    stem(AX,...) plots into axes with handle AX. Use GCA to get the
    handle to the current axes or to create one if none exist.
 
    H = stem(...) returns a vector of stemseries handles in H, one handle
    per column of data in Y.

常见用法

stem(Y)
stem(X,Y)
stem(___,'filled')
stem(___,LineSpec)
stem(___,Name,Value)
stem(ax,___)
h = stem(___)

语法说明

stem(Y) 将数据序列 Y 绘制为从沿 x 轴的基线延伸的针状图。各个数据值由终止每个针状图的圆指示。

  • 如果 Y 是向量,x 轴的刻度范围是从 1 至 length(Y)。
  • 如果 Y 是矩阵,则 stem 将根据相同的 x 值绘制行中的所有元素,并且 x 轴的刻度范围是从 1 至 Y 中的行数。

stem(X,Y) 在 X 指定的值的位置绘制数据序列 Y。X 和 Y 输入必须是大小相同的向量或矩阵。另外,X 可以是行或列向量,Y 必须是包含 length(X) 行的矩阵。

  • 如果 X 和 Y 都是向量,则 stem 将根据 X 中的对应项绘制 Y 中的各项。
  • 如果 X 是向量,Y 是矩阵,则 stem 将根据 X 指定的值集绘制 Y 的每列,这样 Y 的一行中的所有元素都是根据相同的值而绘制。
  • 如果 X 和 Y 都是矩阵,则 stem 将根据 X 的对应列绘制 Y 的列。

stem(___,’filled’) 填充圆形。可以将此选项与前面语法中的任何输入参数组合一起使用。

stem(___,LineSpec) 指定线型、标记符号和颜色。

stem(___,Name,Value) 使用一个或多个 Name,Value 对组参数修改针状图。

stem(ax,___) 将图形绘制到 ax 指定的坐标区中,而不是当前坐标区 (gca) 中。选项 ax 可以位于前面的语法中的任何输入参数组合之前。

h = stem(___) 在 h 中返回由 Stem 对象构成的向量。使用 h 可在创建针状图后对其进行修改。

单数据序列得绘制

创建一个包含 −2π 和 2π 之间的 50 个数据值的针状图。

figure
Y = linspace(-2*pi,2*pi,50);
stem(Y)
Matlab离散序列数据绘图函数stem

数据值绘制为从基线开始延伸并在数据值位置终止的针状线条。Y 的长度自动确定每个针状图在 x 轴上的位置。

多个数据序列得绘制

使用两列矩阵绘制两个数据序列。

figure
X = linspace(0,2*pi,50)';
Y = [cos(X), 0.5*sin(X)];
stem(Y)
Matlab离散序列数据绘图函数stem

Y 的每列绘制为一个单独的序列,且 Y 的同一行的各项会针对同一 x 值进行绘制。Y 中的行数自动生成每个针状线条在 x 轴上的位置。

在指定的 x 值位置绘制单个数据序列

绘制在 0 和 2π 之间计算的 50 个余弦数据值并为针状图指定 x 值集。

figure
X = linspace(0,2*pi,50)';
Y = cos(X);
stem(X,Y)
Matlab离散序列数据绘图函数stem

第一个向量输入确定每个针状线条在 x 轴上的位置。

在指定的 x 值处绘制多个数据序列

绘制在 0 和 2π 之间计算的 50 个正弦和余弦数据值并为针状图指定 x 值集。

figure
X = linspace(0,2*pi,50)';
Y = [cos(X), 0.5*sin(X)];
stem(X,Y)
Matlab离散序列数据绘图函数stem

向量输入确定这两个数据序列的 x 轴位置。

在唯一的 x 值集合处绘制多个数据序列

绘制根据不同的 x 值集计算的 50 个正弦和余弦数据值。为每个序列指定对应的 x 值集。

figure
x1 = linspace(0,2*pi,50)';
x2 = linspace(pi,3*pi,50)';
X = [x1, x2];
Y = [cos(x1), 0.5*sin(x2)];
stem(X,Y)
Matlab离散序列数据绘图函数stem

绘制 X 的每一列对 Y 的对应列的图。

填充图标记

创建一个针状图并填充终止每个针状图的圆。

X = linspace(0,10,20)';
Y = (exp(0.25*X));
stem(X,Y,'filled')
Matlab离散序列数据绘图函数stem

指定针状线条和标记选项

创建一个针状图并使用 LineSpec 选项将线型设置为点线,将标记符号设置为菱形,将颜色设置为红色。

figure
X = linspace(0,2*pi,50)';
Y = (exp(X).*sin(X));
stem(X,Y,':diamondr')
Matlab离散序列数据绘图函数stem

要对菱形内部着色,请使用 ‘fill’ 选项。

指定其他针状线条和标记选项

创建一个针状图,并使用 Name,Value 对组参数将线型设置为点划线,将标记面颜色设置为红色,以及将标记边颜色设置为绿色。

figure
X = linspace(0,2*pi,25)';
Y = (cos(2*X));
stem(X,Y,'LineStyle','-.',...
     'MarkerFaceColor','red',...
     'MarkerEdgeColor','green')
Matlab离散序列数据绘图函数stem

针状图仍保持默认颜色。

指定针状图的坐标区

从 R2019b 开始,您可以使用 tiledlayout 和 nexttile 函数显示分块图。调用 tiledlayout 函数以创建一个 2×1 分块图布局。调用 nexttile 函数以创建坐标区对象 ax1 和 ax2。通过将坐标区对象指定为 stem 的第一个参数,在坐标区中创建单独的针状图。

x = 0:25;
y1 = exp(0.1*x); 
y2 = -exp(.05*x);
tiledlayout(2,1)

% Top plot
ax1 = nexttile;
stem(ax1,x,y1)

% Bottom plot
ax2 = nexttile;
stem(ax2,x,y2)

由于我用得是Matlab2016版本,因此不支持tiledlayout和nexttile函数,这里我是用subplot来代替作图,代码如下:

x = 0:25;
y1 = exp(0.1*x); 
y2 = -exp(.05*x);

subplot(2,1,1)
stem(x,y1)

subplot(2,1,2)
stem(x,y2)
Matlab离散序列数据绘图函数stem

创建后修改针状序列

创建一个三维针状图并返回针状序列对象。

X = linspace(0,2);
Y = X.^3;
Z = exp(X).*cos(Y);
h = stem3(X,Y,Z,'filled');
Matlab离散序列数据绘图函数stem

将颜色更改为品红色,将标记面颜色设置为黄色。使用 view 可调整图窗中坐标区的角度。使用圆点表示法设置属性。

h.Color = 'm';
h.MarkerFaceColor = 'y';
view(-10,35)
Matlab离散序列数据绘图函数stem

调整基线属性

创建一个针状图并更改基线的属性。

X = linspace(0,2*pi,50);
Y = exp(0.3*X).*sin(3*X);
h = stem(X,Y);
Matlab离散序列数据绘图函数stem

更改基线的线型。使用圆点表示法设置属性。

hbase = h.BaseLine; 
hbase.LineStyle = '--';
Matlab离散序列数据绘图函数stem

将基线的 Visible 属性设置为 ‘off’ 以隐藏基线。

hbase.Visible = 'off';
Matlab离散序列数据绘图函数stem

更改基线级别

创建一个针状图并将基线级别设置为 2。

X = linspace(0,2*pi,50)';
Y = (exp(0.3*X).*sin(3*X));
stem(X,Y,'BaseValue',2);
Matlab离散序列数据绘图函数stem

共计3人评分,平均4.3

到目前为止还没有投票~

很抱歉,这篇文章对您没有用!

让我们改善这篇文章!

告诉我们我们如何改善这篇文章?

转载文章,原文出处:MathWorks官网,由古哥整理发布

如若转载,请注明出处:https://iymark.com/program/matlab-scatter-function-stem.html

(1)
上一篇 2020年12月09日 19:44
下一篇 2020年12月11日 20:19

相关推荐

  • Matlab快速入门之线性代数:特征值

    文章目录(展开/隐藏→) 展开特征值的分解多重特征值Schur 分解 4.3 (3) 本文属于Matlab快速入门之线性代数的第四篇,即特征值,主要包括特征值的分解、多重特征值、S…

    2022年09月26日
    087
  • Matlab曲面图及其等高线图绘制函数surfc

    文章目录(展开/隐藏→) 展开常见用法语法说明显示曲面图下的等高线图指定曲面和等高线图的颜色图颜色修改曲面图和等高线图的外观 4.3 (3) 今天,来说下Matlab中如何使用su…

    2021年02月02日
    0276
  • Matlab使用imagesc缩放颜色显示图像

    文章目录(展开/隐藏→) 展开常见用法语法说明显示矩阵数据的图像控制图像位置控制数据值到颜色图的颜色映射创建后修改图像向三维视图中的坐标区添加图像 4.3 (3) 今天,我们讲解M…

    2021年03月25日
    0340
  • Matlab meshc带等高线图的网格曲面图

    文章目录(展开/隐藏→) 展开常见用法语法说明在网格图下显示等高线图为网格和等高线图指定颜色图颜色修改网格和等高线图的外观 4 (2) 今天,给各位带来Matlab中可以绘制带等高…

    2021年02月17日
    0145
  • Matlab散点图绘制函数scatter用法

    文章目录(展开/隐藏→) 展开常见用法语法说明创建散点图改变圆圈大小改变圆圈颜色填充标记指定标记符号更改标记颜色和线条宽度指定目标坐标区和标记类型创建并修改散点序列 4.3 (3)…

    2020年11月09日
    0634
  • Matlab快速入门之调用函数

    4.3 (3) 今天来给各位说下如何在Matlab中调用函数,MATLAB®内置了大量执行计算任务的函数,尤其随着版本的迭代,内置的函数会越来越多。在其他编程语言中,函数等同于子例…

    2022年09月08日
    0103
  • Matlab快速入门之显示图像

    文章目录(展开/隐藏→) 展开图像数据读取和写入图像 4.3 (3) 本文我们带来Matlab快速入门中图像处理的部分,当然只是简单介绍一下。我们需要知道的是Matlab中处理图像…

    2022年10月18日
    0109
  • Matlab三维散点图绘制函数scatter3

    文章目录(展开/隐藏→) 展开常见用法语法说明创建三维散点图改变标记大小改变标记颜色填充标记设置标记类型设置标记属性指定三维散点图的坐标区使用句柄设置散点序列属性 3.3 (4) …

    2020年11月10日
    0623
  • Matlab使用fmesh函数绘制三维网格图

    文章目录(展开/隐藏→) 展开常见用法用法说明表达式的三维网格图参数化网格图指定网格图区间并绘制分段输入指定网格图属性 4.3 (3) 今天,给大家带来Matlab中使用fmesh…

    2021年02月22日
    0244
  • Matlab通过函数绘制等高线图fcontour

    文章目录(展开/隐藏→) 展开常见用法语法说明绘制函数的等高线指定绘图区间并绘制分段等高线图更改线型和线宽绘制多个函数的等高线图创建后修改等高线图填充等高线之间的区域指定等高线的级…

    2021年01月20日
    0229

发表回复

登录后才能评论
本站APP
微信小程序