罗兰关于MATLAB的艺术

将想法转化为MATLAB

在R2021a版本中有一个参数

您是否曾经看过代码,当您调用一个带有许多参数的函数时,其中许多参数都是字符串,并且发现很难看到发生了什么?我知道我有。也许你也一样。在释放 R2021a ,除了相对较新的功能外,该语言还有一个新功能可以帮助我 论据 我写过的 在这里 .如果你有自己的观点,你可能想看看 这个经典视频

制作一个要修改的情节

让我们先画一个图并注释它。
t=0:0.1:10;
Y = sin(2*pi*60*t) + 0.2*randn(size(t));
绘图(t,y)
xlabel(“时间(以秒为单位)”
伊拉贝尔(“信号(电压)”
头衔(“典型信号”
网格(“关于”

通过名称-值对更改绘图(2020年及之前)

现在,假设我想重新创建相同的情节,但对外观有更多的控制。我可以使用名称-值对,这是我们在MATLAB中使用多年的。
图(t,y,“标记”“o”“MarkerEdgeColor”“k”“MarkerFaceColor”“y”“线型”"-."“线宽”, 1.0)
xlabel(“时间(以秒为单位)”
伊拉贝尔(“信号(电压)”
头衔(“离散信号”
网格(“关于”
当你读第一行的时候 情节 在上面,它很容易丢失,特别是当值恰好是较长的字符串时。

通过name=value更改plot(从R2021a开始)

我可以使用R2021a中的新特性 名称=值语法 (以及 在这里 )达到同样的效果。
情节(t y =标志“o”MarkerEdgeColor =“k”MarkerFaceColor =“m”线型=":",线宽= 2.0)
xlabel(“时间(以秒为单位)”
伊拉贝尔(“信号(电压)”
头衔(“离散信号”
网格(“关于”

平滑的数据

现在让我们尝试平滑信号并显示结果。
平滑数据=平滑数据(y,“平均值”SamplePoints SmoothingFactor = 0.5, = t);
图(t,y,“颜色”,[77 190 238]/255,显示名称=“输入数据”
持有
绘图(t,平滑数据,颜色=[0 114 189]/255,线宽=1.5,...
显示名=“平滑数据”
持有
传说
xlabel(“时间(以秒为单位)”
伊拉贝尔(“信号(电压)”
头衔(“平滑信号”
网格(“关于”

讨论

这个语法有一些限制,在发布说明中列出了。例如, 名称=值 语法仅对尾随输入有效。换句话说,一旦您选择了给定函数调用的语法,所有剩余的输入也必须是尾随输入 名称=值 的形式。因为语法是新的,所以现在还缺少一些功能可见性,比如tab-completion。从我的角度来看,我认为它使我的代码比以前更具有自文档化,因为与字符串输入匹配的负担不再是一个问题。你有什么想法 名称=值 可选的尾随输入参数的语法?让我们知道 在这里
版权所有:The MathWorks, Inc.
|
  • 打印
  • 发送电子邮件

评论

如需留言,请点击在这里登录到您的MathWorks帐户或创建新帐户。