Esimerkki Qwt 5.0.1
Tee Qt Greatorilla GUI-sovellus (Window tai Dialog). Lisää dialogiin QwtPlot objekti valikosta (jos QwtPlot ei näy, niin olet asentanut Qwt:n väärin)
Lisäykset projektitiedostoon
#------------------------------------------------\- # Project created by QtCreator 2009-11-05T17:16:56 #------------------------------------------------\- TARGET = SimulaattoriQwt TEMPLATE = app #lisää kaksi seuraavaa riviä, mutta tarkasta ensin, että polut ovat oikein INCLUDEPATH += /usr/include/qwt-qt4 # usr/lib hakemistosta pitää löytyä kirjasto qwt-qt4 -l on kirjastolippu LIBS += -L/usr/lib -lqwt-qt4 SOURCES += main.cpp mainwindow.cpp HEADERS += mainwindow.h FORMS += mainwindow.ui
Luokan muodostin
#include <qwt_plot_marker.h> #include <qwt_legend.h> #include <qwt_scale_draw.h> #include <qwt_math.h> #include <qwt_plot_item.h> #include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); //piirrellään vähän kuvia Kurvi.setText("Eka kuva"); EkaKurvi = new QwtPlotCurve(); TokaKurvi = new QwtPlotCurve(); EkaKurvi->setPen(QPen(Qt::red)); TokaKurvi->setPen(QPen(Qt::blue)); for(i=0;i<100;i++){ x[i]=i; y1[i]=i; y2[i]=100-i;}//luodaan vähän dataa EkaKurvi->setData(x, y1, 100);//laitetaan data käppyriin TokaKurvi->setData(x, y2, 100); TokaKurvi->attach(ui-> EkaqwtPlot);//liitetään käppyrät plotatavaan alueeseen EkaKurvi->attach(ui-> EkaqwtPlot); ui-> ekaQwtPlot->setTitle(Kurvi);// laitetaan plotatavalle alueelle nimi ui-> ekaQwtPlot->replot(); //piirretään //muut alustukset } MainWindow::~MainWindow() { delete EkaKurvi; delete TokaKurvi; delete ui; }
Luokan otsikkotiedosto
#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QtGui/QMainWindow> #include <qwt_plot_marker.h> #include <qwt_legend.h> #include <qwt_scale_draw.h> #include <qwt_math.h> #include <qwt_plot_item.h> #include <qwt_plot_curve.h> #include <qwt_text.h> namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = 0); ~MainWindow(); private: Ui::MainWindow *ui; QwtPlot *EkaPlotti; QwtPlotCurve *EkaKurvi; QwtPlotCurve *TokaKurvi; QwtText Kurvi; int i; double x[100], y1[100], y2[100]; }; #endif // MAINWINDOW_H
Esimerkki Qwt 6.0.1
Tee Qt Greatorilla GUI-sovellus (Dialog). Lisää dialogiin QwtPlot objekti valikosta (jos QwtPlot ei näy, niin olet asentanut Qwt:n väärin)
Lisäykset projektitiedostoon#-------------------------------------------------
#------------------------------------------------- # # Project created by QtCreator 2011-12-14T12:12:07 # #------------------------------------------------- QT += core gui TARGET = qwtHarjoitus TEMPLATE = app #lisää kaksi seuraavaa riviä, mutta tarkasta ensin, että polut ovat oikein INCLUDEPATH += /home/koneauto/QtSDK/qwt-6.0.1/src LIBS += -L/home/koneauto/QtSDK/qwt-6.0.1/lib -lqwt SOURCES += main.cpp\ dialog.cpp HEADERS += dialog.h FORMS += dialog.ui
Luokan muodostin
#include "dialog.h" #include "ui_dialog.h" #include <qwt_plot_marker.h> #include <qwt_legend.h> #include <qwt_scale_draw.h> #include <qwt_math.h> #include <qwt_plot_item.h> Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog) { ui->setupUi(this); //piirrellään vähän kuvia Kurvi.setText("Eka kuva"); EkaKurvi = new QwtPlotCurve(); TokaKurvi = new QwtPlotCurve(); EkaKurvi->setPen(QPen(Qt::red)); TokaKurvi->setPen(QPen(Qt::blue)); for(i=0;i<100;i++){ x[i]=i; y1[i]=i; y2[i]=100-i;}//luodaan vähän dataa EkaKurvi->setSamples(x, y1, 100); TokaKurvi->setSamples(x, y2, 100); TokaKurvi->attach(ui-> ekaQwtPlot);//liitetään käppyrät plotatavaan alueeseen EkaKurvi->attach(ui-> ekaQwtPlot); ui-> ekaQwtPlot->setTitle(Kurvi);// laitetaan plotatavalle alueelle nimi ui-> ekaQwtPlot->replot(); //piirretään //muut alustukset } Dialog::~Dialog() { delete ui; delete EkaKurvi; delete TokaKurvi; delete ui; }
Luokan otsikkotiedosto
#ifndef DIALOG_H #define DIALOG_H #include <QDialog> #include <qwt_plot_marker.h> #include <qwt_legend.h> #include <qwt_scale_draw.h> #include <qwt_math.h> #include <qwt_plot_item.h> #include <qwt_plot_curve.h> #include <qwt_text.h> #include <qwt_plot_seriesitem.h> namespace Ui { class Dialog; } class Dialog : public QDialog { Q_OBJECT public: explicit Dialog(QWidget *parent = 0); ~Dialog(); private: Ui::Dialog *ui; QwtPlot *EkaPlotti; QwtPlotCurve *EkaKurvi; QwtPlotCurve *TokaKurvi; QwtText Kurvi; int i; double x[100], y1[100], y2[100]; }; #endif // DIALOG_H