zoukankan      html  css  js  c++  java
  • QSplineSeries QChartView绘制曲线

    参考资料:

    https://www.qtdebug.com/qtbook-paint-smooth-curve-qchart/

    https://blog.csdn.net/liang19890820/article/details/54618026

    https://blog.csdn.net/lmhuanying1012/article/details/78455037

    https://blog.csdn.net/a844651990/article/details/82706466

    https://blog.csdn.net/u010304326/article/details/79185968

        // 创建平滑曲线上点的序列
        //QLineSeries *splineSeries = new QLineSeries();
        QSplineSeries *splineSeries = new QSplineSeries();
        splineSeries->setName("spline");
    
    
        splineSeries->append(0, 6);
        splineSeries->append(2, 4);
        splineSeries->append(3, 8);
        splineSeries->append(7, 4);
        splineSeries->append(10, 5);
        *splineSeries << QPointF(11, 1) << QPointF(13, 3) << QPointF(17, 6) << QPointF(18, 3) << QPointF(20, 2);
    
    
        // 标记点
        QScatterSeries *scatterSeries = new QScatterSeries();
        scatterSeries->setPointLabelsFormat("@yPoint");
        scatterSeries->setPointLabelsVisible();
        scatterSeries->setMarkerSize(8);
        scatterSeries->append(0, 6);
        scatterSeries->append(2, 4);
        scatterSeries->append(3, 8);
        scatterSeries->append(7, 4);
        scatterSeries->append(10, 5);
        *scatterSeries << QPointF(11, 1) << QPointF(13, 3) << QPointF(17, 6) << QPointF(18, 3) << QPointF(20, 2);
    
    
    //    //区域填充
    //    QAreaSeries *series = new QAreaSeries(splineSeries);
    //    series->setName("Batman");
    //    QPen pen(0x059605);
    //    pen.setWidth(3);
    //    series->setPen(pen);
    
    
        // 使用点的序列创建图标
        QChart *chart = new QChart();
        chart->legend()->hide();
        chart->addSeries(splineSeries);
        chart->addSeries(scatterSeries);
        //chart->addSeries(series);
        chart->setTitle("平滑曲线");
        chart->createDefaultAxes();
        chart->axisY()->setRange(0, 10);
    
    
    //    //X轴下标
    //    QStringList categories;
    //    categories << "Jan" << "Feb" << "Mar" << "Apr" << "May" ;
    //    QBarCategoryAxis *axisX = new QBarCategoryAxis();
    //    axisX->append(categories);
    //    chart->setAxisX(axisX, scatterSeries);
    
    
    
    
    
    
        QChartView *chartView = new QChartView(chart);
        chartView->setRenderHint(QPainter::Antialiasing);
    
    
    
    
        MainWindow w;
        w.setCentralWidget(chartView);
        w.show();
  • 相关阅读:
    CentOS6 配置阿里云 NTP 服务
    使用docker-compose运行nginx容器挂载时遇到的文件/目录问题
    Springboot配置文件参数使用docker-compose实现动态配置
    Dockerfile文件全面详解
    docker 生成mysql镜像启动时自动执行sql
    CentOS无法识别NTFS格式U盘完美解决方案
    网络模型与网络策略
    k8s更换网络插件:从flannel更换成calico
    数据采集实战(四)-- 线性代数习题答案下载
    leedcode 146. LRU 缓存机制(哈希+双向链表)
  • 原文地址:https://www.cnblogs.com/zhangxuan/p/10149970.html
Copyright © 2011-2022 走看看