A spectrogram of . The bright lines show how the spectral components change over time.
The spectrogram is the result of calculating the frequency spectrum of windowed frames of a compound signal. It is a plot of the frequency content of a signal as it changes over time.
In the most usual format, the horizontal axis represents time, the vertical axis is frequency, and the intensity of each point in the image represents amplitude of a particular frequency at a particular time.
There are many variations of format. Sometimes the vertical and horizontal axes are switched, so time runs up and down. Sometimes the amplitude is represented as the height of a 3D surface instead of color intensity. The frequency and amplitude axes can be either linear or logarithmic, depending on what the graph is being used for.
Spectrograms are usually measured in one of two ways; either with a series of bandpass filters, or using the Short Term Fourier Transform.
Bandpass filters are usually used in the analog version of measurement. The frequency range of the signal (an audio signal, for instance, would have frequencies in the range of 20 Hz - 20 kHz) is divided into equal sections, either linearly (0-100, 100-200, 200-300, …), or logarithmically (10-100, 100-1000, 1000-10000, …). Each section is put through a corresponding filter, and the magnitudes of each filter output are recorded over time. Each recording corresponds to a horizontal line in the image; a measurement of magnitude versus time for a specific frequency band.
To calculate the spectrogram using the STFT is usually a digital process. Digitally sampled data is broken up into chunks and Fourier transformed to calculate the magnitude of the frequency spectrum of each chunk. Each chunk corresponds to a vertical line in the the image; a measurement of magnitude versus frequency for a specific moment in time.
The spectrums or time plots are then "laid side by side" to form the image or 3D surface.