2017-05-04 313 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)