Matlab使用comet绘制二维彗星动画图

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

展开
4.7
(6)

今天,再给大家带来一篇关于Matlab绘制动画图的函数。本文,我们讲解Matlab中使用comet函数绘制二维彗星动画图。主要内容有:comet函数的常见用法、语法说明、创建彗星图、控制彗星主体长度、在指定坐标区中创建绘图等。

彗星是由标记(头部)和一条线(尾部)构成的动画,用于跟踪线条随数据点而不断变长的情况。尾巴是跟踪整个函数的实线。

Matlab使用comet绘制二维彗星动画图

下面,我们首先给出Matlab中关于comet函数的帮助文档如下:

>> help comet
 comet  Comet-like trajectory.
    comet(Y) displays an animated comet plot of the vector Y.
    comet(X,Y) displays an animated comet plot of vector Y vs. X.
    comet(X,Y,p) uses a comet of length p*length(Y).  Default is p = 0.10.
 
    comet(AX,...) plots into AX instead of GCA.
 
    Example:
        t = -pi:pi/200:pi;
        comet(t,tan(sin(t))-sin(tan(t)))

常见用法

comet(y)
comet(x,y)
comet(x,y,p)
comet(ax,x,y,p)

语法说明

comet(y) 显示 y 中指定的数据对每个值的索引的彗星图。彗星是由标记(头部)和一条线(尾部)构成的动画,用于跟踪线条随数据点而不断变长的情况。尾巴是跟踪整个函数的实线。

comet(x,y) 显示 y 对 x 的彗星图。

comet(x,y,p) 指定彗星主体长度。彗星主体是位于头部后的尾部段,此尾部段以不同颜色开始,但会渐变为相同颜色。主体长度为 p*length(y),其中 p 是 [0, 1) 范围内的一个标量。

comet(ax,x,y,p) 将彗星绘制到 ax 指定的坐标区中。

创建彗星图

创建 y 中数据对 x 中数据的彗星图。将 y 创建为正弦函数值向量,输入值介于 0 到 2π 之间。将 x 创建为余弦函数值向量,输入值介于 0 到 2π 之间。在各值之间使用递增量 π/100。然后绘制数据图。

t = 0:pi/100:2*pi;
y = sin(t);
x = cos(t);
comet(x,y)
Matlab使用comet绘制二维彗星动画图

控制彗星主体长度

创建一个彗星图,并通过设置缩放因子输入 p 来指定彗星主体的长度。彗星主体是位于头部后的尾部段,此尾部段以不同颜色开始,但会渐变为相同颜色。

将 x 和 y 创建为三角函数向量,输入值介于 0 到 4π 之间。将 p 指定为 0.5,以使彗星主体长度为 0.5*length(y)。然后绘制数据图。

t = 0:pi/50:4*pi;
x = -sin(t) - sin(t/2);
y = -cos(t) + cos(t/2);
p = 0.5;
comet(x,y,p)
Matlab使用comet绘制二维彗星动画图

在指定坐标区中创建绘图

通过指定每个图的目标坐标区,在分块图布局中创建两个彗星图。将两个数据集 x1 和 y1 以及 x2 和 y2 创建为三角函数向量,输入值介于 0 到 4π 之间。将主体长度缩放因子 p 指定为 0.25,以使主体长度为 0.25*length(y)。

t = 0:pi/20:4*pi;
x1 = -cos(t) + cos(t/2);
y1 = -sin(t) - sin(t/2);
x2 =  cos(t) - cos(t/2);
y2 = -sin(t) - sin(t/2);
p = 0.25;

将这两个 Axes 对象存储为 ax1 和 ax2。通过包含 Axes 对象作为 comet 的第一个输入参数,为每个彗星图指定目标坐标区。

tiledlayout(1,2);
ax1 = nexttile;
ax2 = nexttile;

comet(ax1,x1,y1,p)
comet(ax2,x2,y2,p)

由于古哥用的是Matlab2016版本,不支持tiledlayout函数以及nexttile函数。这里,我使用subplot代替,结果是一样的,修改后的代码如下:

subplot(1,2,1)
comet(x1,y1,p)

subplot(1,2,2)
comet(x2,y2,p)
Matlab使用comet绘制二维彗星动画图

共计6人评分,平均4.7

到目前为止还没有投票~

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

让我们改善这篇文章!

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

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

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

(2)
上一篇 2021年03月18日 19:36
下一篇 2021年03月20日 19:39

相关推荐

  • Matlab使用for语句来编写一定次数的循环

    文章目录(展开/隐藏→) 展开常见用法语法说明分配矩阵值递减值执行指定值的语句对每个矩阵列重复执行语句友情提示 4.5 (4) 今天,来教大家Matlab中for语句的使用。for…

    2021年03月30日
    1386
  • Matlab快速入门之脚本和函数

    文章目录(展开/隐藏→) 展开概述脚本函数函数类型全局变量命令与函数语法 4.3 (3) 本来带来Matlab快速入门系列篇的最后一篇,脚本与函数。主要包括如下内容:概述、脚本、函…

    2022年11月30日
    012
  • Matlab最生猛绘制竖直连线图的方法

    4.4 (5) 今天,又一个Matlab群友在群里提了一个如何用Matlab绘制竖线图的疑问。思来想去,也只能用最笨拙的方法来绘制了,就是挨个描点连接,组成一系列连起来的竖线图。这…

    2020年12月02日
    0276
  • Matlab快速入门之编程和脚本

    文章目录(展开/隐藏→) 展开脚本实时脚本循环及条件语句脚本位置 4.3 (3) 我们知道Matlab内置了大量函数,方便数据处理,函数作图等。当我们遇到一些问题需要解决,而Mat…

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

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

    2022年10月18日
    0110
  • Matlab音频信号读取函数audioread

    文章目录(展开/隐藏→) 展开原版m文件 4.7 (13) 昨天有人问我怎么用Matlab读取WAV或MP3等音频信号,然后提取音频,并作傅里叶变换,找到音频的振频和谐波。然后,他…

    2020年10月30日
    1650
  • Matlab使用imagesc缩放颜色显示图像

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

    2021年03月25日
    0342
  • Matlab快速入门之工作区变量

    4.3 (3) 正如我们在《Matlab快速入门之桌面基础知识》一文中,提到的Matlab工作区。一般,打开Matlab界面,右侧部分就是Matlab的工作区。工作区中,包含在MA…

    2022年09月07日
    0732
  • Matlab快速入门之文本和字符

    文章目录(展开/隐藏→) 展开字符串数组中的文本字符数组中的数据 4.3 (3) 本文中,将会讲解Matlab中关于文本和字符的创建。其中,文本指的是字符串数组中的文本;字符指的是…

    2022年09月07日
    0132
  • Matlab表达式二维绘图函数fplot

    文章目录(展开/隐藏→) 展开常见用法语法说明表达式绘制参数曲线绘制分段函数绘制线条属性标记线条属性修改多个线条绘制坐标轴格式 4.3 (3) 今天,带来Matlab中,绘制表达式…

    2020年10月26日
    0225

发表回复

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