Qt利用QPieSeries,QPieSlice,QChartView制作环形比例图表

QT版本:Qt 5.5.1 (MSVC 2013, 32 bit)
Qt Creator版本:Qt Creator 3.5.1 (opensource)
系统:win10
Qt利用QPieSeries,QPieSlice,QChartView制作环形比例图表_第1张图片
最近查看了qt自带的例子,研究了一下环形图的制作,代码及自己写的注释如下:
1.在.pro文件中添加如下代码:

QT       += charts

2.在主窗口类的头文件中添加如下代码:

#include 
#include 
#include 
#include 
QT_CHARTS_USE_NAMESPACE

3.在主窗口类.cpp中添加如下代码:

//![1]
    QPieSeries *series = new QPieSeries();//
    series->setHoleSize(0.35);//设置圆环内部孔的大小【0-1】
    series->append("Part1 30%",30);//增加一个分块,占比30%
    QPieSlice *slice = series->append("Part2 30%", 30);//增加一个分块,占比30%,并实例化一个QPieSlice指向该分块
    slice->setExploded(true);//让该弧形块与主圆环分开
    slice->setLabelVisible(true);//显示该弧形块的标签
    series->append("Part3 40%", 40);//增加一个分块,占比40%
//![1]

//![2]
    QChartView *chartView = new QChartView();//实例化QChartView控件
    chartView->setRenderHint(QPainter::Antialiasing);//设置提示(QPainter::Antialiasing消除混叠现象)
    chartView->chart()->setTitle("Donut example");//设置标题
    chartView->chart()->addSeries(series);//将QPieSeries对象附加到QChartView控件中
    chartView->chart()->legend()->setAlignment(Qt::AlignBottom);//设置图例显示在底部,默认在顶部
    chartView->chart()->setTheme(QChart::ChartThemeLight);//设置整个图表的背景主题,默认是ChartThemeLight主题
    //chartView->chart()->legend()->setFont(QFont("Arial", 7));//设置字体
//![2]
this->setCentralWidget(chartView);//主界面值显示一个QChartView控件

你可能感兴趣的:(QT,Windows,Linux)