我將介紹我在MATLAB中創建的工作,但是我無法使用繪圖函數將數據處理爲一個合適的形式。在MATLAB中使用圖形繪製所需的幫助
我的代碼如下所示:
[inputname, pathname] = uigetfile('*.wav', 'Select WAV-file');
thumb1 = inputname; %# Get filename information
fprintf('\n%s is being turned into a 30s thumbnail...\n', thumb1);
fprintf('Please wait..!\n\n');
%# load the signal
[y, fs, nb] = wavread(thumb1);
y = mean(y,2); %# stereo, take avrg of 2 channels
%# Calculate frame energy
fWidth = round(fs*10e-3); %# 10ms
numFrames = floor(length(y)/fWidth);
energy = zeros(1,numFrames);
for f=1:numFrames
energy(f) = sum(y((f-1)*fWidth+1:f*fWidth).^2);
end
基本上我想繪製軌道的能量隨時間(單位:秒)。
plot(energy)
幾乎做什麼,我需要,但我的空白不尋常的數量在這是不存在的.wav文件賽道結束。這個空白空間是我遇到的主要問題。理想情況下,我希望x軸在幾秒鐘內顯示!任何幫助將非常感激。
EDIT1:
使用第一種建議的方法:
工作得很好,謝謝。 – Velocity 2010-10-22 11:47:23