阅读量:0
折线图
#include "widget.h" #include "ui_widget.h" #include <QtCharts/QChart> #include <QtCharts/QChartView> #include <QtCharts/QLineSeries> #include<QVBoxLayout> 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 <QtCharts/QChart> #include <QtCharts/QChartView> #include <QtCharts/QPieSeries> #include<QVBoxLayout> 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 <QtCharts/QChart> #include <QtCharts/QChartView> #include <QtCharts/QBarSeries> #include <QtCharts/QBarSet> #include<QVBoxLayout> 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; }