Matlab图:当x改变时自动更新相应的y

时间:2012-07-31 15:41:07

标签: matlab

我想用X和Y绘图,当我更新X的范围时,矢量大小会改变,所以Y需要再次分配:

>> y = sin(x)

如果我不这样做,我通常会得到:

>> plot (x,y)
Error using plot
Vectors must be the same lengths.

所以我想知道,如果有办法让它自动完成

1 个答案:

答案 0 :(得分:3)

你可以使y成为一个函数(句柄),

y = @(x)sin(x)
plot (x,y(x),x2,y(x2),x3,y(x3),x4,y(x4))

当然,有了这么简单的功能,你也可以坚持使用sin,即

plot (x,sin(x),x2,sin(x2),x3,sin(x3),x4,sin(x4))

您也可以合并plot命令以进一步简化呼叫:

plotsin = @(x)plot(sin(x));

这样你就可以打电话了

plotsin(x);

表示任何输入x