Qt Qwt打点画图

news/2024/7/4 0:52:16 标签: qt, ui, plot, class, delete, object
class="baidu_pl">
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;
}

效果如图:





http://www.niftyadmin.cn/n/1736002.html

相关文章

Qt designer 中的布局与打破布局

如果想让控件能随着窗口的改变而适应窗口&#xff0c;那么你应该使用布局管理器。当使用了窗口管理器后你就不能自定义窗口里面的个别控件了。如果不得不改变控件&#xff0c;那么你就得“打破布局。 布局管理器中有&#xff1a; 1.水平布局 2.垂直布局 3.使用分裂器水平布…

Element属性与方法整理

属性/方法名描述accessKey为元素指定获取焦点的快捷键align&#xff1f;ariaAtomic指示辅助技术是否根据aria-relevant定义的通知显示全部或部分更改区域ariaAutoComplete反映了 aria-autocomplete属性的值&#xff0c;指示输入文本是否可触发自动完成功能ariaBusy反映了 aria-…

Qt QPainter QpinterPath QPixmap常用语句

类QPainter的常用语句&#xff1a;void PainterTest::paintEvent(QPaintEvent *) {QPainter painter(this);/*QPen pen; //画笔pen.setColor(QColor(255,0,0));QBrush brush(QColor(0,255,0,125)); //画刷*/QPen pen(Qt::DotLine);QBrush brush(Qt::blue);brush.setStyle(Qt::H…

C与C++中的问题

test.c: #include <stdio.h>void change (int *a,int &b,int c){c*a; b3; *a2;}int main(){int a1,b2,c3;change(&a,b,c);printf("%d %d %d \n",a,b,c);return 0;} 运行&#xff1a; Compiling... 9.c d:\vcfile\9.c(4) : error C2143: syntax error :…

HTML中<meta>标签的name属性都有哪些——标准元数据名称

是什么 标准元数据名称是在HTML的<meta> 标签中定义的name 属性的可选名称&#xff0c;name属性包含两种类型&#xff1a; 标准名称。这是规范中定义的&#xff0c;所有浏览器都能够明白其所指称的名称自定义名称。由网页作者自己定义的名称。 这里所说的标准元数据名…

OSI[七层]与TCP/IP[四层]模型简述简图

转自http://blog.csdn.net/21aspnet/article/details/5780847 OSI参考模型&#xff08;OSI/RM&#xff09;的全称是开放系统互连参考模型&#xff08;Open System Interconnection Reference Model&#xff0c;OSI/RM&#xff09;&#xff0c;它是由国际标准化组织&#xff0…

修改目录下所有文件的权限

[rootlocalhost ~]# chmod -R 777 /home/user 注&#xff1a;表示将整个/home/user目录与其中的文件和子目录的权限都设置为rwxrwxrwx

Content-Security-Policy —— HTML HTTP的内容安全策略

是什么 HTTP 协议的 Content-Security-Policy 响应头允许网站管理员控制用户代理可以为给定页面加载的资源 有什么用 可以防止[[跨站点脚本攻击]] 语法 Content-Security-Policy: <policy-directive>; <policy-directive>指令<policy-directive>说明 获…