基于Qt的图表库

简介: 简述如果要开发一个 Qt 应用程序(C++ 或 QML),包含绘图和数据可视化,需要插入一些图表,例如:饼图、条形图或更复杂的,有什么可选的图表库呢?一起来看看。简述Qt ChartsKD ChartQWTQCustomPlotQtiPlot更多参考版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/lia

简述

如果要开发一个 Qt 应用程序(C++ 或 QML),包含绘图和数据可视化,需要插入一些图表,例如:饼图、条形图或更复杂的,有什么可选的图表库呢?一起来看看。

版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820

Qt Charts

这里写图片描述

  • 来自:Qt 官方提供

  • 基于:Qt Graphics View 框架

  • 兼容性:Qt5.7 及以上版本可直接使用;Qt5.7 之前的版本(最早只能到 Qt5.4),需要自行编译使用;更早的版本中,只能使用商业版 Qt。

  • 许可模式:长久以来都是收费的,只有商业版才可以使用,但从 Qt5.7 开始,以 GPLv3 许可(针对开源用户)提供给开源版使用。

  • 主要特点:美观、现代、性能好、易上手。。。由于使用了 Qt Graphics View 框架,因此可以很轻松地被集成到现代用户界面。而且 Qt Charts 可用作 QWidgets、QGraphicsWidget 或 QML 类型。通过选择一个图表主题,可以轻松地创建令人印象深刻的图表。

  • 主要功能:提供了一组更受欢迎、易于使用的图表组件:条形图、极坐标图、饼图、散点图、以及许多示例和主题。

KD Chart

这里写图片描述

  • 来自:KDAB 的解决方案

  • 基于:Qt Model-View,允许重用现有的数据模型来创建图表。

  • 兼容性:支持 Qt4 和 Qt5

  • 最新版本:KD Chart 2.6.0

  • 许可模式:基于 GPL 或商业许可,可自行选择。

  • 主要特点:用于创建业务图表,是同类中最强大的 Qt 组件。除了具有所有标准功能之外,它能够使开发人员设计和管理大量的轴,并提供复杂的定制。

  • 主要功能:提供了非常有用的甘特图(包含:Gantt charts),以及流行的图表:条形图、折线图、饼图。通过使用 KDChartWidget,可以简单地将图表集成到 Qt 应用程序。

QWT

这里写图片描述

  • 主页:http://qwt.sourceforge.net/

  • 全称:Qt Widgets for Technical Applications

  • 基于:Qt Widgets

  • 兼容性:支持 Qt4 和 Qt5

  • 最新版本:Qwt 6.1.3 ,发布日期:2016/06/12

  • 许可模式:基于 LGPL 版权协议的开源项目

  • 主要特点:成熟、高效,有良好的文档,并提供了大量的示例,与大量(数千、数十万)的点工作得很好。

  • 主要功能:包含了基本的 2D 图,例如:散点图、直方图、散点图,还提供了刻度、滑块、圆盘、温度计、仪表盘等。

QCustomPlot

这里写图片描述

  • 主页:http://www.qcustomplot.com/

  • 基于:Qt Widgets

  • 兼容性:支持 Qt4.6 - Qt5.7

  • 最新版本:QCustomPlot 2.0.0-beta,发布日期:2016/09/13

  • 许可模式:源代码和软件根据 GNU GPL 许可,除非另有说明。

  • 主要特点:界面干净、简洁、小巧玲珑(只有两个源文件,没有进一步的依赖性),很容易扩展,并且有良好的文档。专注于制作好看,出版高质量的 2D 绘图、图形和图表,以及为实时可视化应用程序提供更高的性能。

  • 主要功能:提供了漂亮的 2D 图 ,例如:曲线图、趋势图、坐标图、柱状图等。

注意:可在项目中直接使用两个源文件,或预先编译成库。

QtiPlot

这里写图片描述

  • 主页:http://www.qtiplot.com/

  • 基于:OpenGL 的 3D 绘图

  • 兼容性:支持 Qt4 和 Qt5

  • 最新版本:QtiPlot 0.9.9.8 release 版,发布日期:2016/12/12

  • 许可模式:基于 GPL 或商业许可,可自行选择。

  • 主要特点:用于交互式科学绘图和数据分析,类似于专有程序 Origin 或 SigmaPlot,在大学中被广泛使用。

  • 主要功能:支持 2D 和 3D 绘图,具有一些高级功能,例如:统计分析、曲线拟合、图像分析工具。

注意:虽然 QtiPlot 开源免费,但是免费指的是它的源代码,其编译好的二进制代码(也就是可执行文件)是收费的,因此,如果你不想支付费用的话,则可以使用 GPL 许可,自己编译。

更多参考

对于上述的图表库,几乎都可以导出为各种格式,例如:PDF、SVG、Images(bmp、ico、jpeg、png……)等。

由于 Qt 5.7 集成了以前用于商业的 Qt Charts,使其可用于 LGPLv3 许可下的开源版,这使得 Qt Charts 更受欢迎。。。小伙伴们,赶快行动吧,还在等什么!

图表库太多,除了这些之外,还有一些其他的库(例如:ChartDirector)。当然,我们还可以选择强大的 JS 图表库,例如:

  • Highcharts - 国外
  • ECharts - Enterprise Charts,由百度开发
  • G2 - The Grammar Of Graphics,由阿里开发
    ……

           $(function () {                 $('pre.prettyprint code').each(function () {                     var lines = $(this).text().split('\n').length;                     var $numbering = $('<ul/>').addClass('pre-numbering').hide();                     $(this).addClass('has-numbering').parent().append($numbering);                     for (i = 1; i <= lines; i++) {                         $numbering.append($('<li/>').text(i));                     };                     $numbering.fadeIn(1700);                 });             });        

目录
相关文章
|
机器学习/深度学习 数据采集 分布式计算
如何实现一个亿的股票模拟盘跟踪
如何实现一个亿的股票模拟盘跟踪
459 0
|
人工智能
第二批拟立项名单|2024年阿里云协同育人项目立项通知
第二批拟立项名单|2024年阿里云协同育人项目立项通知
|
4月前
|
存储 人工智能 搜索推荐
拔俗AI社保规划师:您的24小时私人社保顾问,让福利不“迷路”
面对社保政策复杂、咨询需求激增的现状,AI社保规划师系统基于阿里云技术,构建政务级云原生智能服务体系,实现政策数据实时更新、精算模型精准计算、个性化方案智能推荐。通过“云-端-边”协同架构,打通数据安全、智能分析与多端应用,支撑日均超8万次咨询,响应时间缩短至10秒,助力政务服务效率提升40%以上,推动社保服务向数字化、智能化转型。
208 0
|
存储 分布式计算 资源调度
什么是Hadoop及其组件?
【8月更文挑战第31天】
1323 1
|
机器学习/深度学习 传感器 人工智能
AI与未来医疗:重塑健康管理新格局随着人工智能(AI)技术的飞速发展,医疗行业正迎来一场前所未有的变革。AI不仅在数据分析、诊断支持方面展现出巨大潜力,还在个性化治疗、远程医疗等多个领域实现了突破性进展。本文将探讨AI技术在医疗领域的具体应用及其对未来健康管理的影响。
人工智能(AI)正在彻底改变医疗行业的面貌。通过深度学习算法和大数据分析,AI能够迅速分析海量的医疗数据,提供精准的诊断和治疗建议。此外,AI在远程医疗、药物研发以及患者管理等方面也展现出了巨大的潜力。本文将详细探讨这些技术的应用实例,并展望其对健康管理的深远影响。
1110 28
|
监控 Go API
Go语言在微服务架构中的应用实践
在微服务架构的浪潮中,Go语言以其简洁、高效和并发处理能力脱颖而出,成为构建微服务的理想选择。本文将探讨Go语言在微服务架构中的应用实践,包括Go语言的特性如何适应微服务架构的需求,以及在实际开发中如何利用Go语言的特性来提高服务的性能和可维护性。我们将通过一个具体的案例分析,展示Go语言在微服务开发中的优势,并讨论在实际应用中可能遇到的挑战和解决方案。
|
自然语言处理 算法 物联网
【技术前沿】智能反向寻车解决方案:提升停车场用户体验与运营效率
本文介绍了一种智能反向寻车解决方案,通过集成物联网(IoT)、大数据分析及用户友好的移动应用,利用蓝牙信标或RFID标签实现车辆厘米级定位。车主仅需输入车牌号或停车位编号,即可获得最佳寻车路径。该方案不仅大幅缩短寻车时间,还提升了停车场运营效率。以合肥骆岗公园为例,应用后车主平均寻车时间从10分钟缩短至2分钟内,用户满意度显著提高。
745 1
【技术前沿】智能反向寻车解决方案:提升停车场用户体验与运营效率
|
数据可视化 算法 定位技术
Python数据可视化matplotlib和pyecharts参数详解
Python数据可视化matplotlib和pyecharts参数详解
696 0
单模、多模能混合使用吗?这篇给您讲明白!
单模、多模能混合使用吗?这篇给您讲明白!
723 5