Matplotlib.axes.Axes.magnitude_spectrum() in Python

Matplotlib is a library in Python and it is numerical – mathematical extension for NumPy library. The Axes Class contains most of the figure elements: Axis, Tick, Line2D, Text, Polygon, etc., and sets the coordinate system. And the instances of Axes supports callbacks through a callbacks attribute.
matplotlib.axes.Axes.magnitude_spectrum() Function
The Axes.magnitude_spectrum() function in axes module of matplotlib library is used to plot the magnitude spectrum.
Syntax: Axes.magnitude_spectrum(self, x, Fs=None, Fc=None, window=None, pad_to=None, sides=None, *, data=None, **kwargs)
Parameters: This method accept the following parameters that are described below:
- x: This parameter is a sequence of data.
- Fs : This parameter is a scalar. Its default value is 2.
- window: This parameter take a data segment as an argument and return the windowed version of the segment. Its default value is window_hanning()
- sides: This parameter specifies which sides of the spectrum to return. This can have following values : ‘default’, ‘onesided’ and ‘twosided’.
- pad_to : This parameter contains the integer value to which the data segment is padded.
- Fc: This parameter is also contains the integer value to offsets the x extents of the plot to reflect the frequency range. Its default value is 0
Returns: This returns the following:
- spectrum :This returns the angle spectrum in radians.
- freqs :This returns the frequencies corresponding to the elements in spectrum.
- line : This returns the line created by this function.
The resultant is (spectrum, freqs, line)
Below examples illustrate the matplotlib.axes.Axes.magnitude_spectrum() function in matplotlib.axes:
Example 1:
# Implementation of matplotlib function import matplotlib.pyplot as plt import numpy as np np.random.seed(10**5) dt = 0.0001Fs = 1 / dt zambiatek = np.array([22.00, 61.90, 7.80, 24.40, 110.25, 20.05, 15.00, 22.80, 34.90, 57.30]) nse = np.random.randn(len(zambiatek)) r = np.exp(-zambiatek / 0.05) s = 0.5 * np.sin(1.5 * np.pi * zambiatek) + nse # plot magnitude_spectrum fig, ax = plt.subplots() ax.magnitude_spectrum(s, Fs = Fs, color ="green") ax.set_title('matplotlib.axes.Axes.magnitude_spectrum()\ Example') plt.show() |
Output:
Example 2:
# Implementation of matplotlib function import matplotlib.pyplot as plt import numpy as np np.random.seed(0) dt = 0.01Fs = 1 / dt t = np.arange(0, 10, dt) res = np.random.randn(len(t)) r = np.exp(-t / 0.05) cres = np.convolve(res, r)*dt cres = cres[:len(t)] s = 0.5 * np.sin(1.5 * np.pi * t) + cres # plot simple spectrum fig, (ax1, ax2) = plt.subplots(2, 1) ax1.plot(t, s, color ="green") # plot magnitude_spectrum ax2.magnitude_spectrum(s, Fs = Fs, color ="green") ax1.set_title('matplotlib.axes.Axes.magnitude_spectrum()\ Example') plt.show() |
Output:




