عند العمل مع مخططات فرعية متعددة في التصور، يصبح من الضروري التحكم في نطاق المحور لكل مخطط فرعي على حدة لضمان التمثيل الصحيح للبيانات. يستكشف هذا السؤال كيفية تعيين نطاق المحور y لحبكة فرعية ثانية ضمن تخطيط ثنائي الحبكة الفرعية. تنشأ المشكلة عندما يُظهر مخطط FFT ارتفاعًا خارجيًا، مما يجعل البيانات المطلوبة غير مرئية.
لمعالجة هذه المشكلة، استخدم pylab.ylim([bottom, top]) بعد المخطط تم إنشاؤه. تحدد الوسيطتان السفلية والعلوية الحدود الدنيا والعليا لنطاق المحور، على التوالي.
import numpy, scipy, pylab, random
xs = []
rawsignal = []
with open("test.dat", 'r') as f:
for line in f:
if line[0] != '#' and len(line) > 0:
xs.append(int(line.split()[0]))
rawsignal.append(int(line.split()[1]))
h, w = 3, 1
pylab.figure(figsize=(12,9))
pylab.subplots_adjust(hspace=.7)
pylab.subplot(h,w,1)
pylab.title("Signal")
pylab.plot(xs,rawsignal)
pylab.subplot(h,w,2)
pylab.title("FFT")
fft = scipy.fft(rawsignal)
pylab.plot(abs(fft))
pylab.ylim([0,1000]) # Set the y-axis range
pylab.savefig("SIG.png",dpi=200)
pylab.show()
1. الترحيل من Pylab إلى pyplot الخاص بـ Matplotlib
اعتبارًا من عام 2021، لا يشجع Matplotlib بشدة على استخدام pylab. بدلاً من ذلك، يوصى باستيراد pyplot على وجه التحديد:from matplotlib import pyplot as plt
2. استخدم plt.ylim() بدلاً من pylab.ylim()
بناء الجملة الصحيح لتحديد نطاق المحور y باستخدام pyplot هو plt.ylim(). استخدامه مشابه لـ pylab.ylim().plt.ylim(0, 100)
3. تعيين الحد الأدنى لقيمة المحور السيني
بالإضافة إلى ضبط نطاق المحور الصادي، فكر في تعيين الحد الأدنى لقيمة المحور السيني لضمان رؤية النطاق الكامل لمخطط FFT.
plt.xlim(1, 1000)
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3