How to plot average power spectra of 5 time series data ?

조회 수: 14 (최근 30일)
DURYODHAN PRUSTY
DURYODHAN PRUSTY 2021년 4월 21일
답변: Vaibhav 2024년 2월 14일
I have 5 time series data files . i.e. first.dat , second.dat, third.dat , four.dat , five.dat
I want to plot average power spectra plot of these five time series data at a time . Please suggest how to plot?

답변 (1개)

Vaibhav
Vaibhav 2024년 2월 14일
Hi Duryodhan
I understand that you would like to plot average power spectra plot for time series data simultaneously.
You can consider following the below steps:
  1. Load each data file using the "load" function.
  2. Compute the power spectral density (PSD) for each time series using the "pwelch" function.
  3. Average the power spectra of all the time series.
  4. Plot the average power spectrum.
Here is a code snippet for your reference:
% Initialize an array to store the power spectra.
powerSpectra = [];
% Define the list of filenames.
filenames = {'first.dat', 'second.dat', 'third.dat', 'four.dat', 'five.dat'};
% Loop through each file.
for i = 1:length(filenames)
% Load the time series data from the file.
data = load(filenames{i});
% Assuming the data is a single column of values. If it's not, you may need to adjust this.
timeseries = data(:,1);
% Compute the power spectral density (PSD) using Welch's method.
% You may need to specify the window, overlap, and NFFT parameters as needed.
[pxx, f] = pwelch(timeseries, [], [], [], 'onesided');
% Store the power spectrum in the array.
powerSpectra = [powerSpectra; pxx'];
end
% Compute the average power spectrum.
averagePowerSpectrum = mean(powerSpectra, 1);
% Plot the average power spectrum.
figure;
plot(f, 10*log10(averagePowerSpectrum));
xlabel('Frequency (Hz)');
ylabel('Power/Frequency (dB/Hz)');
title('Average Power Spectrum');
grid on;
You can refer to the MathWorks documentation below to learn more about "load" and "pwelch" function respectively:
Hope this helps!

카테고리

Help CenterFile Exchange에서 Spectral Measurements에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by