QChart绘制折线区域

效果图:

 

 

代码:

    // 创建折线上点的序列
    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->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();

 

转载于:https://www.cnblogs.com/zhangxuan/p/10149910.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值