首先在.pro添加 QT += Charts ;
若使用的是VS编程软件,具体操作如下所示:
勾选charts文件
下面直接给出代码
#include "QtGuiApplication1.h"
#include <QtWidgets/QApplication>
#include <QtWidgets/QMainWindow>
#include <QSplineSeries>
#include <qchartview.h>
#include <qpoint.h>
#include <qchart.h>
#include <qlayout.h>
//这段程序是为了成功显示中文
#pragma execution_character_set("utf-8");
//使用命名空间
QT_CHARTS_USE_NAMESPACE;
QtGuiApplication1::QtGuiApplication1(QWidget *parent)
: QWidget(parent)
{
ui.setupUi(this);
QSplineSeries* series = new QSplineSeries();
/*设置图标名**/
series->setName("spline");
/*添加数据**/
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);
/*创建Chart**/
QChart* chart = new QChart();
chart->addSeries(series);
//chart->legend()->hide(); // 将spline字符进行隐藏
chart->setTitle("简单的曲线图表");
chart->createDefaultAxes();
/*如果想自己设定坐标轴方位则使用setRange()**/
chart->axes(Qt::Vertical).first()->setRange(0,10);
chart->axes(Qt::Horizontal).first()->setRange(0, 20);
/*创建QChartView*/
QChartView* chartView = new QChartView(chart);
chartView->setRenderHint(QPainter::Antialiasing); // 这个函数使得曲线光滑了许多
/*使chartView 跟Widget 产生联系**/
QVBoxLayout* vLayout = new QVBoxLayout(this);
vLayout->addWidget(chartView);
}
显示结果:
版权声明:本文为qq_42138448原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。