The present code is a Matlab function that provides a 3D visual representation of the spectrum obtained by a spectral analysis of a given signal x[n]. The results are:
1) 3D scatter plot of the spectrum – frequency, phase and magnitude across the x-, y- and z- axis, respectively. The magnitude of the spectral components is double coded – via the color and the size of the scatter points. The exact location of a given point on the plot could be observed using the Data Cursor;
2) optionally, mark on the significant spectrum peaks.
Four examples are given in order to clarify the usage of the function. For convenience, the input and output arguments are given in the beginning of the function.
The code is based on the theory described in:
 N. Majumdar, S. Banerjee. MATLAB Graphics and Data Visualization. Birmingham, Packt Publishing, 2012.
 G. Heinzel, A. Rudiger, R. Schilling. Spectrum and spectral density estimation by the Discrete Fourier transform (DFT), including a comprehensive list of window functions and some new flat-top windows. Germany, Hannover, Max-Planck-Institut für Gravitationsphysik, 2002.
Hristo Zhivomirov (2022). Spectrum Visualization with Matlab Implementation (https://www.mathworks.com/matlabcentral/fileexchange/60681-spectrum-visualization-with-matlab-implementation), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Inspired by: Spectral Analysis with Matlab Implementation
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!