概述

三维柱状图

QWidget *graphContainer= QWidget::createWindowContainer(graph3D);//图表的容器
Q3DBars *graph3D= new Q3DBars();   //图表
graph3D->scene()->activeCamera()->setCameraPreset(Q3DCamera::CameraPresetFrontHigh); //设置视角QValue3DAxis *axisV=new QValue3DAxis; //数值坐标axisV->setTitle("value");axisV->setTitleVisible(true);QCategory3DAxis *axisRow=new QCategory3DAxis;graph3D->setValueAxis(axisV);
graph3D->setRowAxis(axisRow);QBar3DSeries *series= new QBar3DSeries;   //序列
series->setMesh(QAbstract3DSeries::MeshCylinder);
series->setItemLabelFormat("(@rowLabel,@colLabel): %.1f"); //项的标签显示格式
graph3D->addSeries(series);QBarDataArray *dataSet = new QBarDataArray; //数据代理
dataSet->reserve(rowLabs.count());
QBarDataRow *dataRow = new QBarDataRow;
*dataRow << 1 << 2<< 3<< 4<<5; //第1行数据,有5列
dataSet->append(dataRow);
series->dataProxy()->resetArray(dataSet);//图表的网格graph3D->activeTheme()->setGridEnabled(checked);
//柱状图的光滑性series->setMeshSmooth(checked);
//反射graph3D->setReflection(checked);
//轴标题graph3D->valueAxis()->setTitleVisible(checked);graph3D->rowAxis()->setTitleVisible(checked);graph3D->columnAxis()->setTitleVisible(checked);
//轴标签背景graph3D->activeTheme()->setLabelBackgroundEnabled(checked);
//Z轴反向graph3D->valueAxis()->setReversed(checked);
//图表的背景graph3D->activeTheme()->setBackgroundEnabled(checked);
//轴标签字体大小QFont font = graph3D->activeTheme()->font();font.setPointSize(arg1);graph3D->activeTheme()->setFont(font);
//设置主题Q3DTheme *currentTheme = graph3D->activeTheme();currentTheme->setType(Q3DTheme::Theme(index));
//设置序列柱状图的颜色QColor  color=series->baseColor();color=QColorDialog::getColor(color);if (color.isValid())series->setBaseColor(color);
//项的标签series->setItemLabelFormat("value at (@rowLabel,@colLabel): %.1f");series->setItemLabelVisible(checked);
//棒图的样式QAbstract3DSeries::Mesh aMesh;aMesh=QAbstract3DSeries::Mesh(index);series->setMesh(aMesh);
//选择模式graph3D->setSelectionMode(QAbstract3DGraph::SelectionFlags(index));//变换视角Q3DCamera::CameraPreset  cameraPos=Q3DCamera::CameraPreset(index);graph3D->scene()->activeCamera()->setCameraPreset(cameraPos);
//设置变换视角
graph3D->scene()->activeCamera()->setCameraPosition(xRot, yRot,zoom);

三维散点图

Q3DScatter  *graph3D=new Q3DScatter();;       //散点图
QScatter3DSeries *series=new QScatter3DSeries(proxy);//散点序列
QScatterDataProxy *proxy = new QScatterDataProxy(); //数据代理
series->setMeshSmooth(true);
graph3D->addSeries(series);
//创建坐标轴
graph3D->axisX()->setTitle("axis X");
graph3D->axisX()->setTitleVisible(true);QScatterDataArray *dataArray = new QScatterDataArray();
dataArray->resize(itemCount);
QScatterDataItem *ptrToDataArray = &dataArray->first();for(i=1,i<100,++i)
{ptrToDataArray->setPosition(QVector3D(x,z,y));ptrToDataArray++;
}

三维曲面图

#include    <QtDataVisualization>
using namespace QtDataVisualization;QWidget* graphContainer=QWidget::createWindowContainer(graph3D);
Q3DSurface      *graph3D= new Q3DSurface();   //三维图表//创建坐标轴
QValue3DAxis *axisX=new QValue3DAxis;
axisX->setTitle("Axis X");
axisX->setTitleVisible(true);
axisX->setRange(-11,11);
graph3D->setAxisX(axisX);QSurfaceDataProxy *proxy= new QSurfaceDataProxy();//数据代理
QSurface3DSeries* series= new QSurface3DSeries(proxy);//序列
series->setItemLabelFormat("(@xLabel @yLabel @zLabel)");
series->setMeshSmooth(true);
series->setDrawMode(QSurface3DSeries::DrawSurfaceAndWireframe);
graph3D->addSeries(series);//创建数据, 墨西哥草帽QSurfaceDataArray *dataArray = new QSurfaceDataArray; //数组dataArray->reserve(N);proxy->resetArray(dataArray);//渐变颜色按钮QLinearGradient grBtoY(0, 0, 100, 0);   //线型渐变grBtoY.setColorAt(1.0, Qt::black);grBtoY.setColorAt(0.0, Qt::yellow);QPixmap pm(160, 20);    //图片QPainter pmp(&pm);//画家pmp.setBrush(QBrush(grBtoY)); //渐变颜色1pmp.setPen(Qt::NoPen);pmp.drawRect(0, 0, 160, 20);ui->btnGrad1->setIcon(QIcon(pm));//渐变颜色按钮1//单一曲面颜色QColor  color=series->baseColor();color=QColorDialog::getColor(color);if (color.isValid()){series->setBaseColor(color);series->setColorStyle(Q3DTheme::ColorStyleUniform);}//选择模式(如剖面图)
graph3D->setSelectionMode(QAbstract3DGraph::SelectionSlice);
//曲面样式(入是否是框架图)
series->setDrawMode(QSurface3DSeries::DrawWireframe);
void MainWindow::on_btnGrad1_clicked()
{//设置曲面渐变颜色QLinearGradient gr;gr.setColorAt(0.0, Qt::black);gr.setColorAt(0.33, Qt::blue);gr.setColorAt(0.67, Qt::red);gr.setColorAt(1.0, Qt::yellow);series->setBaseGradient(gr);series->setColorStyle(Q3DTheme::ColorStyleRangeGradient);
}//选择标识的形状,如一个点,一个三角
QAbstract3DSeries::Mesh aMesh;
aMesh=QAbstract3DSeries::Mesh(index+1);
series->setMesh(aMesh);

三维地形图

Q3DSurface  *graph3D= new Q3DSurface();//三维图表//创建数据代理
QImage heightMapImage(":/map/sea.png");
QHeightMapSurfaceDataProxy *proxy= new QHeightMapSurfaceDataProxy(heightMapImage); //数据代理
proxy->setValueRanges(-5000, 5000, -5000, 5000);QSurface3DSeries *series= new QSurface3DSeries(proxy);//序列

10 Data Visualization相关推荐

  1. 数据可视化(data visualization)—— seaborn

    进入命令行界面(cmd)下载安装,pip install seaborn.seaborn 是作为 matplotlib 的辅助工具才出现的,使其绘制出更为形象化的图形. 官当 doc:Seaborn: ...

  2. Data Visualization – Banking Case Study Example (Part 1-6)

    python信用评分卡(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_camp ...

  3. 现代的数据可视化(Data Visualization)技术

    人视觉....最直接接受信息的一种方式... 或者把数据变的可视 更便于人对数据的认识. ------------------------ 现代的数据可视化(Data Visualization)技术 ...

  4. Qt开发总结(20)——Data Visualization

    上篇介绍了Qt Charts二维图表模块,本篇笔记总结Qt三维图表模块--Data Visualization.同样,在Qt5.7之前之后商业版才有,从Qt5.7开始免费开放在了社区版中.与QtCha ...

  5. Qt Data Visualization

    Qt Data Visualization  写在前面:  正文:   一 Demo--audiolevels 运行效果:   二 Demo--bars 运行效果:   三 Demo--customi ...

  6. Qt三维图表模块 -- Data Visualization 学习记录

    Qt三维图表模块 ----- Data Visualization Qt数据可视化模块提供了一种将三维图形中的数据可视化为条形图.散点图和曲面图的方法.它对于可视化深度图和大量快速变化的数据特别有用, ...

  7. oracle可视化图标,Oracle Data Visualization Desktop 试用

    下载安装 Oracle Data Visualization Desktop,简称DV,是Oracle推出的一个数据可视化独立产品,也是Oracle BI产品BIEE的一部分. 为了与Microsof ...

  8. Data Visualization

    Data Visualization                    -Scalar Visualization Data Visualization Data Visualization(数据 ...

  9. Data Visualization(一)

    Data Visualization是Qt提供的用于数据三维显示的模块.Data Visualization用于数据的三维显示,包括三维柱状图.三维空间散点图.三维曲面等.Data Visualiza ...

最新文章

  1. media recovery oracle,media recovery
  2. year range in CRM Fiori Sales Pipeline
  3. 深度学习(21)神经网络与全连接层四: 输出方式
  4. BFPTR算法详解+实现+复杂度证明
  5. java安装后在哪里打开_冷却塔声屏障安装后降噪效果不理想,原因出在哪里?...
  6. 处理移动端pdf展示问题
  7. 数据结构 之 并查集(Disjoint Set)
  8. java collection 常用类_分析Collection常用的实现类
  9. keras 中 reuse 问题
  10. 线程和进程有什么区别(简单介绍)
  11. sparksql优化_Spark SQL | 目前Spark社区最活跃的组件之一
  12. 如何用VS2015手撕白菜
  13. T检验与F检验的区别_f检验和t检验的关系
  14. 计算机无法登录到你的账户,Windows10系统提示“无法登录到你的账户”如何解决...
  15. 【EXLIBRIS】#小词旮旯# 002 Rape
  16. 至于你信不信(由你),我反正信了
  17. 操作系统——文件存储管理
  18. Linux下硬盘加密
  19. 大魔王程序员生成记#01#C语言基础
  20. 半导体器件物理【4】晶胞晶格晶面晶向

热门文章

  1. SteamVR使用射线交互UI
  2. 1600页!卷S人的 Java《八股文》PDF手册
  3. 2022年社区工作人员社区专职工作者考试精选套卷及答案
  4. 最美的英文 - 第九篇 - love
  5. 求闰年 LeapYear.java
  6. 基于TCP协议的mfc多人聊天室
  7. python svg2rlg,Convert SVG to PNG with Python on Windows
  8. java模拟银行存取_JAVA模拟银行存钱,取钱操作以及计算利息操作
  9. 天猫淘宝的低帮帆布鞋主图视频批量下载技巧
  10. android layout_margintop,layout_margintop