class="article_content clearfix">
class="htmledit_views">
效果如图:
源程序:FunCurve.h
class="language-cpp">#ifndef FUNCURVE_H
#define FUNCURVE_H
#include <QMainWindow>
#include <qwt_class="tags" href="/tags/PLOT.html" title=plot>plot_curve.h>
#include <QVector>
#include <qwt_symbol.h>
namespace Ui {
class FunCurve;
}
class FunCurve : public QMainWindow
{
Q_OBJECT
public:
explicit FunCurve(QWidget *parent = 0);
~FunCurve();
private:
Ui::FunCurve *class="tags" href="/tags/UI.html" title=ui>ui;
QwtPlotCurve * curve;
QVector<double> xData;
QVector<double> yData;
};
#endif // FUNCURVE_H
FunCurve.cpp
class="language-cpp">#include "funcurve.h"
#include "class="tags" href="/tags/UI.html" title=ui>ui_funcurve.h"
FunCurve::FunCurve(QWidget *parent) :
QMainWindow(parent),
class="tags" href="/tags/UI.html" title=ui>ui(new Ui::FunCurve)
{
class="tags" href="/tags/UI.html" title=ui>ui->setupUi(this);
class="tags" href="/tags/UI.html" title=ui>ui->class="tags" href="/tags/PLOT.html" title=plot>plot->setCanvasBackground(Qt::green);
curve = new QwtPlotCurve();
curve->attach(this->class="tags" href="/tags/UI.html" title=ui>ui->class="tags" href="/tags/PLOT.html" title=plot>plot);
class="tags" href="/tags/UI.html" title=ui>ui->class="tags" href="/tags/PLOT.html" title=plot>plot->setAxisScale(QwtPlot::xBottom, 0.0, 10.0);
class="tags" href="/tags/UI.html" title=ui>ui->class="tags" href="/tags/PLOT.html" title=plot>plot->setAxisScale(QwtPlot::yLeft, 0.0, 10.0);
class="tags" href="/tags/UI.html" title=ui>ui->class="tags" href="/tags/PLOT.html" title=plot>plot->setAxisTitle(QwtPlot::xBottom,"x -->");
class="tags" href="/tags/UI.html" title=ui>ui->class="tags" href="/tags/PLOT.html" title=plot>plot->setAxisTitle(QwtPlot::yLeft,"y -->");
for(int x=0;x<100;x++)
{
xData.append((double)x);
yData.append((double)x);
}
curve->setSymbol(new QwtSymbol(QwtSymbol::Cross, Qt::NoBrush,
QPen(Qt::black), QSize(5, 5) ) );
curve->setPen(QColor(Qt::darkGreen));
curve->setStyle(QwtPlotCurve::Lines);
curve->setCurveAttribute(QwtPlotCurve::Fitted);
/*
d_curves[i].setSymbol(new QwtSymbol(QwtSymbol::Ellipse, Qt::yellow,
QPen(Qt::blue), QSize(5, 5) ) );
d_curves[i].setPen(QColor(Qt::red));
d_curves[i].setStyle(QwtPlotCurve::Sticks);
i++;
d_curves[i].setPen(QColor(Qt::darkBlue));
d_curves[i].setStyle(QwtPlotCurve::Lines); //*qwtexample中的实例,画图样式
i++;
d_curves[i].setPen(QColor(Qt::darkBlue));
d_curves[i].setStyle(QwtPlotCurve::Lines);
d_curves[i].setRenderHint(QwtPlotItem::RenderAntialiased);
i++;
d_curves[i].setPen(QColor(Qt::darkCyan));
d_curves[i].setStyle(QwtPlotCurve::Steps);
i++;
d_curves[i].setSymbol(new QwtSymbol(QwtSymbol::XCross, Qt::NoBrush,
QPen(Qt::darkMagenta), QSize(5, 5) ) );
d_curves[i].setStyle(QwtPlotCurve::NoCurve);
*/
curve->setRawSamples(&xData[0], &yData[0], xData.size());
class="tags" href="/tags/UI.html" title=ui>ui->class="tags" href="/tags/PLOT.html" title=plot>plot->reclass="tags" href="/tags/PLOT.html" title=plot>plot();
}
FunCurve::~FunCurve()
{
delete class="tags" href="/tags/UI.html" title=ui>ui;
}
效果如图: