在QT中使用QtChart

1、在pro文件中添加QT += charts。
2、在头文件中添加#include <QtCharts/QtCharts>
3、在界面使用Qt Creator添加一个QGraphicsView组件,然后提升为QChartView。
提升的时候,这样写提升为的类:QtCharts::QChartView,头文件写:qchartview.h。


截图.png

如果没有对QGraphicsView提升,可能会导致在QGraphicsView中添加的Chart不显示;若用QChartView显示Chart则不受此限制(会单独生成一个独立窗口显示)。

//QChart负责管理数据
//QChartView负责显示
折线图代码:

        QLineSeries *series = new QLineSeries();
        series->append(0, 6);
        series->append(2, 4);
        series->append(3, 8);
        series->append(7, 4);
        series->append(10, 5);
        *series << QPointF(11, 1) << QPointF(13, 3) << QPointF(17, 6) << QPointF(18, 3) << QPointF(20, 2);

        QChart *chart = new QChart();
        chart->legend()->hide();
        chart->addSeries(series);
        chart->createDefaultAxes();
        chart->setTitle("Simple line chart example");

        ui->graphicsView->setChart(chart);
        ui->graphicsView->setRenderHint(QPainter::Antialiasing);

饼图代码:

    QPieSeries *series = new QPieSeries();
    series->append("10%", 1);
    series->append("20%", 2);
    series->append("70%", 7);
    series->setLabelsVisible();

    QPieSlice *slice_red = series->slices().at(0);
    QPieSlice *slice_green = series->slices().at(1);
    QPieSlice *slice_blue = series->slices().at(2);
    slice_red->setColor(QColor(255,0,0,255));
    slice_green->setColor(QColor(0,255,0,255));
    slice_blue->setColor(QColor(0,0,255,255));

    QChart *chart = new QChart();
    chart->addSeries(series);
    chart->setTitle("PieChart Example");
    chart->legend()->hide();

    //QChartView *chartview = new QChartView(chart);
    //chartview->setRenderHint(QPainter::Antialiasing);
    //chartview->show();
    ui->graphicsView->setChart(chart);
    ui->graphicsView->setRenderHint(QPainter::Antialiasing);

效果图:

效果图.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Qt是属于一个跨平台的GUI开发软件,支持的平台有Unix、Linux、Windows/WinCE、IOS等。 Q...
    一叶之界阅读 12,572评论 0 17
  • 简介 Qt的线性绘图控件有大名鼎鼎的Qwt,ChartDirector,小巧玲珑的QCustomPlot,当然还有...
    尘中远阅读 23,445评论 0 49
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,210评论 25 709
  • 太阳落山,凉意丝丝透过毛衣,手微微凉。 如果想在秋天的尾巴,值班的下午,去看秋天的山,却找不到人陪,...
    张迦男阅读 3,696评论 0 1
  • 看完这些资料估计需要半小时。但,我们是一个很棒的读书会。值得你这么做。 1.理念篇:http://mp.weixi...
    木点先生阅读 1,580评论 0 0

友情链接更多精彩内容