qt中charts图表的使用方法
创始人
2024-12-16 17:36:33

折线图

#include "widget.h" #include "ui_widget.h" #include  #include  #include  #include  Widget::Widget(QWidget *parent)     : QWidget(parent)     , ui(new Ui::Widget) {      ui->setupUi(this);      //创建一个 QChart 对象,并设置其标题为 "Sample Line Chart"。     QChart *chart = new QChart();     chart->setTitle("Sample Line Chart");     //创建一个 QLineSeries 对象,这是用于存储折线图数据的系列。     QLineSeries *series = new QLineSeries();     //使用 append 方法向系列中添加数据点。这里添加了三个数据点:(0, 1),(1, 2) 和 (2, 3)。     series->append(0, 1);     series->append(1, 2);     series->append(2, 3);     //将数据系列添加到图表中     chart->addSeries(series);     //创建一个 QChartView 对象,它是一个视图,用于显示图表。     QChartView *chartView = new QChartView(chart);     //创建一个垂直布局 QVBoxLayout。     QVBoxLayout *layout = new QVBoxLayout;     //将图表视图添加到布局中。     layout->addWidget(chartView);     //将布局设置为窗口小部件的布局。     this->setLayout(layout);  } 

在这里插入图片描述

饼图:

#include "widget.h" #include "ui_widget.h" #include  #include  #include  #include  Widget::Widget(QWidget *parent)     : QWidget(parent)     , ui(new Ui::Widget) {      ui->setupUi(this);      // 创建饼图     QChart *chart = new QChart();     chart->setTitle("Sample Pie Chart");      // 创建饼图系列     QPieSeries *series = new QPieSeries();     series->append("Apples", 30); // 添加数据项和对应的值     series->append("Oranges", 20);     series->append("Pears", 50);      // 将饼图系列添加到图表中     chart->addSeries(series);      // 饼图特定的设置     series->setLabelsVisible(true); // 显示标签     series->setHoleSize(0.2); // 设置饼图中心的空白大小      // 创建图表视图     QChartView *chartView = new QChartView(chart);      // 创建布局并添加图表视图     QVBoxLayout *layout = new QVBoxLayout;     layout->addWidget(chartView);     this->setLayout(layout);  }  Widget::~Widget() {     delete ui; }  

在这里插入图片描述

柱状图:

#include "widget.h" #include "ui_widget.h" #include  #include  #include  #include  #include  Widget::Widget(QWidget *parent)     : QWidget(parent)     , ui(new Ui::Widget) {      ui->setupUi(this);      // 创建柱状图     QChart *chart = new QChart();     chart->setTitle("Sample Bar Chart");      // 创建柱状图系列     QBarSeries *series = new QBarSeries();      // 创建不同的柱状集     QBarSet *setApples = new QBarSet("Apples");     setApples->append(30); // 苹果的数量      QBarSet *setOranges = new QBarSet("Oranges");     setOranges->append(20); // 橙子的数量      QBarSet *setPears = new QBarSet("Pears");     setPears->append(50); // 梨的数量      // 将柱状集添加到系列中     series->append(setApples);     series->append(setOranges);     series->append(setPears);      // 将柱状图系列添加到图表中     chart->addSeries(series);      // 创建图表视图     QChartView *chartView = new QChartView(chart);      // 创建布局并添加图表视图     QVBoxLayout *layout = new QVBoxLayout;     layout->addWidget(chartView);     this->setLayout(layout); }  Widget::~Widget() {     delete ui; }  

在这里插入图片描述

相关内容

热门资讯

“无人家务”渐行渐近 记者 李 均 宋迎迎 从AI技术的持续突破,到各类AI产品与智能终端的加速落地,再到智慧生活场景的日...
苏州工业园区 2026年防灾减... 在第18个全国防灾减灾日到来之际,5月11日,苏州工业园区2026年防灾减灾宣传周启动仪式暨AI赋能...
【好物】雅诗兰黛第7代小棕瓶京... 全网 618 大促现已正式开始,全场均年度好价,有需求的小伙伴速抢哦: 京东无门槛红包 京东无门槛...
原创 1... 2011年4月底,郴州开往湖北的火车上,一名少年满头大汗地捂着腰部,低声呻吟。列车员和周围乘客焦急地...
Geekom Air12 20... 随着中国制造商在紧凑且高性能迷你电脑领域的崛起,Geekom已成为备受瞩目的品牌之一。此前,其AMD...