3

所以我必须在 MatLab 中绘制一些图表。

起初我将其保存为 .m 文件:

function y = f(x)
y = sqrt((abs(sin(21*pi*x)))/(2+sin(20*pi*x)));

然后我做:

x=[0:0.05:1]
y=f(x)

然后当我需要绘制图表时,使用

plot(x,f) 

我收到此错误:

??? Input argument "x" is undefined.
Error in ==> f at 2
y = sqrt((abs(sin(21*pi*x)))/(2+sin(20*pi*x)));

有人可以告诉我这里有什么问题吗?

4

1 回答 1

3

您需要使用./运算符,而不是/在逐元素划分两个向量时使用。试试这个

x = 0:0.05:1;
y = sqrt((abs(sin(21*pi*x)))./(2+sin(20*pi*x)));
plot(x,y)

在此处输入图像描述

于 2012-12-03T21:08:22.323 回答