当前位置: 首页 > news >正文

Qt绘制饼状图

必须在MainWindow.h头文件开头放

#include    <QtCharts>  //必须这么设置

创建chart:

void MainWindow::iniPiewChart()
{ //饼图初始化QChart *chart = new QChart();chart->setTitle(" Piechart演示");chart->setAnimationOptions(QChart::SeriesAnimations);ui->chartViewPie->setChart(chart);ui->chartViewPie->setRenderHint(QPainter::Antialiasing);
}

绘制chart:

void MainWindow::buildPieChart()
{ //绘制饼图QChart *chart =ui->chartViewPie->chart(); //获取chart对象chart->removeAllSeries(); //删除所有序列int colNo=1+ui->cBoxCourse->currentIndex(); //获取分析对象,数学、英语、语文或平均分QPieSeries *series = new QPieSeries(); //创建饼图序列series->setHoleSize(ui->spinHoleSize->value()); //饼图中间空心的大小for (int i=0;i<=4;i++) //添加分块数据{QTreeWidgetItem*  item=ui->treeWidget->topLevelItem(i); //获得QTreeWidgetItem的itemseries->append(item->text(0),item->text(colNo).toFloat()); //添加一个饼图分块数据,标签,数值}QPieSlice *slice; //饼图分块for(int i=0;i<=4;i++) //设置每个分块的标签文字{slice =series->slices().at(i);  //获取分块slice->setLabel(slice->label()+QString::asprintf(": %.0f人, %.1f%%",    //设置分块的标签slice->value(),slice->percentage()*100));
//信号与槽函数关联,鼠标落在某个分块上时,此分块弹出connect(slice, SIGNAL(hovered(bool)),this, SLOT(on_PieSliceHighlight(bool)));}slice->setExploded(true); //最后一个设置为explodedseries->setLabelsVisible(true); //只影响当前的slices,必须添加完slice之后再设置chart->addSeries(series); //添加饼图序列chart->setTitle("Piechart----"+ui->cBoxCourse->currentText());chart->legend()->setVisible(true); //图例chart->legend()->setAlignment(Qt::AlignRight);//Qt::AlignRight
}

设置chart样式:

ui->chartViewPie->chart()->setTheme(QChart::ChartTheme(index));

http://www.lryc.cn/news/227885.html

相关文章:

  • Vue3 setup函数
  • Django(三、数据的增删改查、Django生命周期流程图)
  • Linux 部署Sentinel控制台
  • 服务器如何下载百度网盘数据
  • POJ 3254 Corn Fields 状态压缩DP(铺砖问题)
  • transformers安装避坑
  • 牛客、赛码网OJ调试(全)
  • 【CSS】全局声明引入自定义字体
  • 「Flask」路由+视图函数
  • 信息系统项目管理师 教材目录、考试大纲、考情
  • python线性回归实现
  • 【JavaEESpring】认识Spring
  • Rust逆向学习 (5)
  • 89.STL-函数对象的使用(仿函数)
  • 文件管理技巧:按文件容量大小分类,自动移动至目标文件夹的方法
  • [架构之路-246]:目标系统 - 设计方法 - 软件工程 - 需求工程- 需求开发:获取、分析、定义、验证
  • 轻量日志管理方案-[EFK]
  • Halcon WPF 开发学习笔记:HSmartWindowControlWPF正常加载
  • mybatis的简单教程
  • 数据结构 队列(C语言实现)
  • Android---屏幕适配的处理技巧
  • vmware workstation 与 device/credential guard 不兼容
  • 第7章-使用统计方法进行变量有效性测试-7.2.1-单因素方差分析
  • 黑客技术-小白学习手册
  • 用示波器测量高压电
  • AQS中Node状态
  • STM32 寄存器配置笔记——GPIO配置输出
  • Spring boot 整合grpc 运用
  • C++ 模板保姆级详解——template<class T>(什么是模板?模板分哪几类?模板如何应用?)
  • uni.getLocation() 微信小程序 线上获取失败