Я собираюсь представить свою работу, которую я создал в MATLAB, но у меня возникают проблемы с манипулированием моими данными в виде презентации с использованием функции plot.
Мой код выглядит так:
[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 .Это пустое место - главная проблема, с которой я столкнулся.В идеале я хотел бы, чтобы ось х отображалась в секундах!Любая помощь будет принята с благодарностью.
edit1:
Используя первый предложенный метод: