بســم الله الـرحمــن الرحيــم
مكتبة Qwt
----------------------------------------
لقراءة المقالة في Google Doc:
http://docs.google.com/Doc?docid=0AbaWDp8Y...icWdr&hl=en
----------------------------------------
مكتبة الرسم البياني Qwt و التي بنيت على Qt مبرمجة بإستخدام ++C تستطيع إستخدامها لعمل برامج علمية و مالية ذات تمثيل بياني , موقعها الرسمي: http://pyqwt.sourceforge.net/
و تحوي تلك المكتبة مجموعة ودجات :
QwtCompass تحوير بسيط لودجت QDial للتحكم و عرض الإتجاهات.
QwtCounter ودجت مشابه ل QSpinBox لعرض و التحكم في الأرقام ذات الفصلة العشرية.
QwtDial تحوير بسيط لودجت QDial للتحكم و عرض لأرقام ذات الفصلة العشرية.
QwtKnob شبيه بال potentiometer لعرض الأرقام ذات الفاصلة العشرية.
QwtPlot ودجت الرسم البياني و هدف هذه المقالة.
QwtSlider شبيه بQtSlider
QwtThermo ودجت شبيه بمقياس الحرارة
QwtWheel ودجت شبيه بالقرص محوره موازي لشاشة الحاسوب.
تحتاج لكي تستفيد من إمكانات هذه المكتبة لتثبيت بايثون, PyQt و NumPy (ليست شرط) على جهازك ثم تحصل على PyQwt من الموقع التالي:
http://pyqwt.sourceforge.net/download.html
و هو يحيوي روابط لكل ما تحتاجه لكي تبدأ تجربة المكتبة.
بعد التثبيت ستجد أن Qwt قد تكاملت مع Qt حتى أن مكونات Qwt قد أصبحت جزء من Qt Designer.
المثال الذي سنستخدمه يتعامل مع سطر الأوامر, و لذلك نستخدم الطبقة الخاصة Qwt5.qplt المبنية على QwtPlot التي تسمح بالتعامل المباشر مع سطر الأوامر.
بالنظر لهذا الكود:
>>> from PyQt4.Qwt5 import *
>>> import numpy as np
>>> from PyQt4.Qwt5.qplt import *
>>> from PyQt4.Qt import Qt
>>> app =QApplication ([])
>>> x = np.arange(-2 *np.pi, 2*np.pi, 0.01)
>>> p = Plot(
Curve(x, np.cos(x), Pen(Magenta,2), 'cos(x)'),
Curve(x, np.exp(x), Pen(Red), 'exp(x)', Y2),
Axis(Y2,Log),
'PyQwt using Qwt-%s -- http://qwt.sf.net' % QWT_VERSION_STR)
>>> QPixmap.grabWidget(p).save('sss' ,'PNG')
Trueنفسر الكود سطر سطر:
- السطور من الأول إلى الرابع لإستيراد numpy, PyQt4, Qwt5, qplt.
- السطر الخامس تعريف application و هدفه بدأ مكتبة Qt لكي تتعامل مع مدخلات لوحة المفاتيح و الفأرة.
- السطر السادس لإنشاء متغير x يحوي مصفوفة مداها من -2 * ط إلى 2 * ط و يتغير كل عنصر عن الآخر بقيمة 0.01 .
- السطور من السابع إلى الحادي عشر لتعريف المتغير p الذي يحوي تنشئة ودجت من نوع Plot و تمرير منحنيين أحدهما يقارن بين x و cos(x) و يمثل المنحنى باللون القرمزي بسمك 2, أما المنحنى الآخر يقارن بين x و exp(x) ويمثل المنحنى بلون أحمر مع إضافة محور صادي على الجهة اليمنى من النوع اللوغارتمي "log".
- السطر الثاني عشر لأخذ صورة من النوع png لودجت التمثيل البياني, يمكنك الآن رؤية الرسم البياني كما بالشكل التالي:
يمكنك الإستزادة من الدليل الرسمي (الترجمة بتصرف من نفس الملف):
http://pyqwt.sourceforge.net/doc5/PyQwt.pdf
الحمد لله الذي بنعمته تتم الصالحات.