matlab中plot(t,x(:,1),t,x(:,2));啥意思

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab中plot(t,x(:,1),t,x(:,2));啥意思相关的知识,希望对你有一定的参考价值。

在同一个figure中绘x的第1列元素,第2列元素和时间的关系图 参考技术A 在一个图中画出矩阵第1列和第2列的数据。本回答被提问者采纳

错误:输入字符在 MATLAB 语句或表达式中无效

【中文标题】错误:输入字符在 MATLAB 语句或表达式中无效【英文标题】:Error: The input character is not valid in MATLAB statements or expressions 【发布时间】:2016-03-02 16:12:35 【问题描述】:

当我尝试在 Matlab r2012b 上运行时出现错误

t=-2:.1:5;
x=3*exp(0.4*t);
y=2*exp(-0.9*t);
plot(t,x,t,y,':');
legend('x(t)','y(t)')

产生错误:

>> t=-2:.1:5;
 t=-2:.1:5;
   |
Error: The input character is not
valid in MATLAB statements or
expressions.

编者注:

原始帖子的第一个代码行包含一个“隐藏”字符(单一错误源),由于 SO 格式,该字符在第一次编辑时丢失(旨在修复代码格式)。即使重新回滚到修订版 1,“隐藏”字符也会丢失。

t=字符:ASCII 码 2-2:.1:5;

可以在这里找到原始代码(感谢 Daniel)

http://pastebin.com/SyEHKpjR

【问题讨论】:

@dfri 我建议显式调用您在编辑中删除的 ASCII 字符,因为它是导致错误的原因 @excaza 哦,我的错,没有意识到我删除了感兴趣的部分。我仍然有点不确定我搞砸了哪一部分,你可以通过编辑来解决这个问题,还是我应该回滚到 rev1?感谢您指出这一点。 我试图解决这个问题,所以似乎过滤了这些特殊字符。我不得不直接从问题的源代码中复制它来重现问题。 @Daniel 好像我没有明确删除它,但是 SO 代码格式有吗?我很困惑,因为我可以在 rev1 但不是 rev2 的原始源中找到它。 原始代码可以在这里找到:pastebin.com/SyEHKpjR。我无法为这个问题找到任何有用的格式。 【参考方案1】:

在您的代码中,t=-2:.1:5; 的第三个字符不是 MATLAB 显示的空格(ASCII 代码 32),而是start of text (ASCII Code 2)。我不知道这些控制字符是如何进入你的代码的,但为了清理它,我推荐一个允许to display all hidden chars 的文本编辑器。

【讨论】:

该死的是 t= -2 之间的“空格”。现在我明白了,它有效!谢谢 不错的一个!我复制了代码但无法重新创建它,没有意识到它可能是一个特殊的字符。 @GameOfThrows:在问题的original version 中可以清楚地看到| 指向问题。然后我知道我在搜索什么。

以上是关于matlab中plot(t,x(:,1),t,x(:,2));啥意思的主要内容,如果未能解决你的问题,请参考以下文章

matlab绘图

MATLAB入门学习

matlab 三维直线怎么画

matlab怎么用函数填充三维曲线

如何采用MATLAB证明时域采样定理?

matlab里一次画两条曲线怎么编程?