Matplotlib-এ সিগন্যালের FFT (Fast Fourier Transform) প্লট করেক্ট ফ্রিকোয়েন্সি এক্সিস সহ করার জন্য নিচের ধাপগুলো অনুসরণ করুন।
ধাপসমূহ
- ফিগার সাইজ এবং প্যাডিং সেট করুন।
Nএবংmইনিশিয়ালাইজ করুনnuক্যালকুলেট করার জন্য।- NumPy দিয়ে সাইন ভেলো সিগন্যাল তৈরি করুন। ১D ডিসক্রিট ফুরিয়ে ট্রান্সফর্ম ক্যালকুলেট করুন।
np.fft.fftfreq()দিয়ে ফ্রিকোয়েন্সি স্যাম্পল ফ্রিকোয়েন্সি বের করুন।freqএবং FFT ডেটা প্লট করুন।plt.show()দিয়ে প্রদর্শন করুন।
উদাহরণ কোড
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
N = 256
t = np.arange(N)
m = 4
nu = float(m) / N
signal = np.sin(2 * np.pi * nu * t)
ft = np.fft.fft(signal)
freq = np.fft.fftfreq(N)
plt.plot(freq, ft.real**2 + ft.imag**2)
plt.show()
আউটপুট
FFT পাওয়ার স্পেকট্রাম প্লট দেখাবে যেখানে x-অ্যাক্সিসে করেক্ট ফ্রিকোয়েন্সি থাকবে।