zoukankan      html  css  js  c++  java
  • QChartView饼图

    1、环境准备

    .pro里:

    QT += charts

    头文件:

    #include <QtCharts>

    2、在mainwindow.h里定义饼图变量

    QPieSeries *series;

    3、mainwindow.cpp

    series = new QPieSeries();
    series->append("故障:20个", 20);
    series->append("正常:80个", 80);
    series->setLabelsVisible(/*false*/);
    series->setLabelsPosition(QPieSlice::LabelOutside);//label位置,里面还是外面
    //series->setPieStartAngle(90);//设置开始角度和结束角度
    //series->setPieEndAngle(90);
    //series->setPieSize(0.5);//设置饼的大小
    series->setHoleSize(0.2);//设置圆洞的大小
    
    QPieSlice *slice_red = series->slices().at(0);
    QPieSlice *slice_green = series->slices().at(1);
    slice_red->setColor(QColor(199,38,22));
    slice_green->setColor(QColor(0,165,94));
    slice_red->setLabelColor(QColor(255,255,255));
    slice_green->setLabelColor(QColor(255,255,255));
    //slice_red->setExploded();//展开
    QFont font;
    font.setPointSize(10);
    slice_red->setLabelFont(font);
    slice_green->setLabelFont(font);
    
    QChart *chart = new QChart();
    chart->addSeries(series);
    chart->legend()->hide();
    chart->setBackgroundBrush(QBrush(QColor(34,38,72)));
    chart->setAnimationOptions(QChart::AllAnimations);//设置启用或禁用动画
    
    QChartView *chartview = new QChartView(chart);
    chartview->setRenderHint(QPainter::Antialiasing);
    QVBoxLayout* layout = new QVBoxLayout;
    layout->addWidget(chartview);
    ui->chartview1->setLayout(layout);

    4、效果

    ps:

    设置大小setPieSize感觉没用,resize也没有用;

    这个饼图用起来很难做布局,主要是大小不好设置,有时候label也不能显示;

    除了自己加一个通过设置layout的方式将chartview与widget绑定,也可以

    chartview->setParent(ui->chartview1);

    chartview->show();




    长风破浪会有时,直挂云帆济沧海!
    可通过下方链接找到博主
    https://www.cnblogs.com/judes/p/10875138.html
  • 相关阅读:
    Android(java)学习笔记197:ContentProvider使用之内容观察者02
    数据库连接池--druid
    在java中导出excel
    对excel进行封装
    创建excel,合并单元格,设置单元格样式
    认识Excel并创建一个excel(网址:http://poi.apache.org/)
    认识单元测试(jar包资源网址:http://search.maven.org/)
    Echarts在java中使用
    认识Echarts(网址:http://echarts.baidu.com/tutorial.html#ECharts%20%E7%89%B9%E6%80%A7%E4%BB%8B%E7%BB%8D)
    制作缩略图
  • 原文地址:https://www.cnblogs.com/judes/p/13583589.html
Copyright © 2011-2022 走看看