#chart 绘制简单折线图
1、在 .pro项目文档里添加 QT += charts
2、添加头文件 : #include
添加命名空间 : QT_CHARTS_USE_NAMESPACE
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QLineSeries *series = new QLineSeries();
series->append(0,2);
series->append(QPointF(2,6));
series->append(3,8);
series->append(7,9);
series->append(11,3);
series->append(5,5);
*series << QPointF(11,2) << QPointF(15,5) << QPointF(18,4) << QPointF(19,2);
QChart *chart = new QChart();
series->remove(5,5);
chart->legend()->hide();
// 将图例隐藏
chart->addSeries(series);
// 关联series,必须要将series关联到QChart才能将数据渲染出来:
//series->setUseOpenGL(true);
// 开启OpenGL,QLineSeries支持GPU绘制,Qt其他有的图表类型是不支持的。
chart->createDefaultAxes();
// 创建默认的坐标系(笛卡尔坐标)
chart->setTitle(QStringLiteral("Qt line chart example"));
// 设置图表标题
// QChartView *view = new QChartView(chart);
// view->setRenderHint(QPainter::Antialiasing);
// 开启抗锯齿,让显示效果更好
// view->resize(400,300); 会创建一个新的窗口
ui->widget->setChart(chart);
// 显示图表
}
MainWindow::~MainWindow()
{
delete ui;
}
我是在Ui中添加了一个widget窗口,然后在widget中加入chart图
##其他将Chart图放入主窗口的方法
1、使用布局
下面展示一些 内联代码片
。
chartView = new QChartView(chart);
QHBoxLayout *layout =new QHBoxLayout();
layout->setContentsMargins(0,0,0,0); layout->addWidget(chartView);
QWidget *widget = new QWidget(this);
widget->setLayout(layout);
this->setCentralWidget(widget);
效果图:
2、直接加入窗口
this->setCentralWidget(chartView);