在版本R2021a中有一个争论
您是否看过这样的代码:调用带有许多参数(其中许多是字符串)的函数时,发现很难看到发生了什么?我知道我有。也许你也是。在释放
R2021a
,除了相对较新的功能外,该语言还有一个新的功能可以帮助我
参数
我写过的
在这里
.如果你有自己的观点,你可能会想看看
这个经典视频
.
制作一个要修改的情节
让我们从制作一个情节并注释它开始。
T = 0:0.1:10;
Y = sin(2* *60*t) + 0.2*randn(size(t));
情节(t, y)
包含(“时间(秒)”)
ylabel (“信号(电压)”)
标题(“典型信号”)
网格(“上”)
通过名称-值对(2020年和之前)更改绘图
现在,假设我想重新创建相同的情节,但对外观有更多的控制。我可以使用名值对,我们已经在MATLAB中使用了很多年。
情节(t y“标记”,“o”,“MarkerEdgeColor”,“k”,“MarkerFaceColor”,“y”,“线型”,“-”。,“线宽”, 1.0)
包含(“时间(秒)”)
ylabel (“信号(电压)”)
标题(“离散信号”)
网格(“上”)
当你从第一行读到
情节
就在上面,很容易丢失,特别是当值恰好是较长的字符串时。
通过name=value更改plot(从R2021a开始)
情节(t y =标志“o”MarkerEdgeColor =“k”MarkerFaceColor =“m”线型=”:“,线宽= 2.0)
包含(“时间(秒)”)
ylabel (“信号(电压)”)
标题(“离散信号”)
网格(“上”)
平滑数据
现在让我们试着平滑该信号并显示结果。
smooththedata = smoothdata(y,“movmean”SamplePoints SmoothingFactor = 0.5, = t);
情节(t y“颜色”,[77 190 238]/255,DisplayName= .输出说明“输入数据”)
持有在
plot(t, smoothedata,Color=[0 114 189]/255,LineWidth=1.5,...
DisplayName =“平滑数据”)
持有从
传说
包含(“时间(秒)”)
ylabel (“信号(电压)”)
标题(“平滑信号”)
网格(“上”)
讨论
这个语法有一些限制,在发布说明中列出了。例如,
名称=值
语法只对输入中的尾随有效。换句话说,一旦选择了给定函数调用的语法,所有剩余的输入也必须加入
名称=值
的形式。由于语法是新的,目前还缺少一些功能支持,比如制表符补全。从我的角度来看,我认为它使我的代码比以前更具有自文档性,因为匹配字符串输入的负担不再是一个问题。你有什么想法
名称=值
可选的,尾随输入参数的语法?让我们知道
在这里
.
版权所有:The MathWorks, Inc.