2014-10-31 30 views
1

我正在將一組樣本加載到Matlab中,最後我得到一個長度爲69,632個樣本的向量。計算信號時間向量稍微不正確

但是,當我嘗試爲繪圖目的創建時間向量時,我無法準確得知它。這是我的方法:

Fs = 44100;    %44.1kHz sampling rate 
Ts = 1/Fs;     %Time spacing between samples 
maxTime = Ts * len;  %Time of last data point (len=69,632) 
timeVector = 0:Ts:maxTime %Create the time axis vector 

所以我的計算timeVector結束是69633元長,因爲1/Fs計算是略圓了起來,然後當我乘該結果由LEN我想這只是到達一個較大的數字。

我可以得到Matlab不圓嗎?或者是否有更好/正確的方法來獲取我缺少的時間軸?

回答

1

既然你開始從0t

len = length(signal); % len = 69632; 
    Ts = 1/44100; 
    timeVector = (0 : len -1) * Ts; 
+0

你的意思'MAXTIME-Ts'因爲在這種情況下,將減去1整秒? – krb686 2014-10-31 20:37:06

+0

@ krb686,是的,實際上我改變了一下代碼,嘗試一下。 – Rashid 2014-10-31 20:39:17

+1

謝謝,比我預料的要容易得多。 – krb686 2014-10-31 20:41:14