6. Qt 5.6.2使用QtCharts

  1. 编译源码
    1.用qt 5.6.2 mingw 打开QtCharts源码工程文件
    QtCharts源码下载:
    链接:https://pan.baidu.com/s/1sUD-mGISa8k-zFhpTLrc1w
    提取码:f8oy
    6. Qt 5.6.2使用QtCharts_第1张图片

2.选择release 构建 ,编译成功后出现
6. Qt 5.6.2使用QtCharts_第2张图片

3.创建一个QtCharts文件夹,将编译生成的lib文件放到QtCharts文件夹中,只留下.a .prl .dll 文件,如下图
6. Qt 5.6.2使用QtCharts_第3张图片

将源码中的include文件夹和src文件也放进来
6. Qt 5.6.2使用QtCharts_第4张图片
2. 测试
1.创建一个测试工程
6. Qt 5.6.2使用QtCharts_第5张图片
2.将上面创建的QtCharts文件夹放到这个工程目录下面;
6. Qt 5.6.2使用QtCharts_第6张图片
3.右键项目加载库

6. Qt 5.6.2使用QtCharts_第7张图片
6. Qt 5.6.2使用QtCharts_第8张图片

4…pro文件多了:

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/QtCharts/lib/ -lQt5Charts
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/QtCharts/lib/ -lQt5Chartsd

INCLUDEPATH += $$PWD/QtCharts/include
DEPENDPATH += $$PWD/QtCharts/include

5.写一个官方的列子:
Mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include 
#include 
QT_CHARTS_USE_NAMESPACE

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H

Mainwindow.cpp


#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QLineSeries *series0 = new QLineSeries();
    QLineSeries *series1 = new QLineSeries();
    *series0 << QPointF(1, 5) << QPointF(3, 7) << QPointF(7, 6) << QPointF(9, 7) << QPointF(12, 6)
                   << QPointF(16, 7) << QPointF(18, 5);
    *series1 << QPointF(1, 3) << QPointF(3, 4) << QPointF(7, 3) << QPointF(8, 2) << QPointF(12, 3)
                   << QPointF(16, 4) << QPointF(18, 3);
    QAreaSeries *series = new QAreaSeries(series0, series1);
    series->setName("Batman");
    QPen pen(0x059605);
    pen.setWidth(3);
    series->setPen(pen);

    QLinearGradient gradient(QPointF(0, 0), QPointF(0, 1));
    gradient.setColorAt(0.0, 0x3cc63c);
    gradient.setColorAt(1.0, 0x26f626);
    gradient.setCoordinateMode(QGradient::ObjectBoundingMode);
    series->setBrush(gradient);

    QChart *chart = new QChart();
    chart->addSeries(series);
    chart->setTitle("Simple areachart example");
    chart->createDefaultAxes();
    chart->axisX()->setRange(0, 20);
    chart->axisY()->setRange(0, 10);

    QChartView *chartView = new QChartView(chart);
    chartView->setRenderHint(QPainter::Antialiasing);
    this->setCentralWidget(chartView);

}

MainWindow::~MainWindow()
{
    delete ui;
}

记得添加上: QT_CHARTS_USE_NAMESPACE
运行效果:
6. Qt 5.6.2使用QtCharts_第9张图片

你可能感兴趣的:(qt5,qt,5.6.3,QtCharts)