2017-05-04 310 views
0

我试图绘制这个方程,但我有些困难,请一些帮助。 我在这里是我所尝试过的。在MATLAB中绘制正弦函数

x=[0:pi/20:4*pi]; 
    y= (25*sin(3)*t); 
    plot (x,y) 
+1

你在哪里使用'x'?这是[plot]文档中的第一个示例(https://www.mathworks.com/help/matlab/ref/plot.html#examples) – beaker

+2

[绘制MatLab中正弦波的倒数] (http://stackoverflow.com/questions/20379798/plotting-the-reciprocal-of-a-sine-wave-in-matlab) – NKN

回答

1

您的代码不工作,因为t是不确定的。你要么需要改变你的x定义是t,例如:

t=[0:pi/20:4*pi]; 

,或者你需要让你yx一个功能,而不是t,例如:

y= (25*sin(3)*x); 

我我很好奇,如果你想要绘制的原始公式/函数是y(t)=25 sin(3 t)。如果是这种情况,那么您需要更改括号,以便sin是自变量(xt)的函数。这看起来像:

y = 25*sin(3*x); 
0

您需要等于向量长度的值分配给t作为x。 但是,我相信,你需要用等式中的t代替x。

y= (25*sin(3)*x); # will plot a straight line since you have a constant sin(3) 
        # which you are just multiplying with x resulting in x verses constant x 

我想你想的公式写成

x=[0:pi/20:4*pi]; 
y= (25*sin(3*x)); 
plot (x,y) 

Plot Matlab

+0

你试过这个吗?我不认为这是OP正在寻找的东西。 – beaker

+0

是的,我试过了。如果OP想要在他的方程中使用't',那么当矢量't'的长度等于'x'的长度时它就起作用。 –

+0

我很抱歉在我的评论中没有更明确。我发现OP不太可能打算画出一条包含常量'sin(3)'的直线,特别是当它们已经使用数字常量'25'时。我发现它更可能是OP只是弄错了方程式,他们试图做'sin(3 * )'来产生一个正弦曲线图。那有意义吗? – beaker

0

我想你的意思是让振荡:

x = [0:pi/20:4*pi]; 
y = 25*sin(3*x); 
plot(x,y)