如果要开发一个 qt 应用程序c++ 或 qml包含绘图和数据可视化需要插入一些图表例如饼图、条形图或更复杂的有什么可选的图表库呢一起来看看。
<a href="#%e7%ae%80%e8%bf%b0">简述</a>
<a href="#qt-charts">qt charts</a>
<a href="#kd-chart">kd chart</a>
<a href="#qwt">qwt</a>
<a href="#qcustomplot">qcustomplot</a>
<a href="#qtiplot">qtiplot</a>
<a href="#%e6%9b%b4%e5%a4%9a%e5%8f%82%e8%80%83">更多参考</a>
来自qt 官方提供
基于qt graphics view 框架
兼容性qt5.7 及以上版本可直接使用qt5.7 之前的版本最早只能到 qt5.4需要自行编译使用更早的版本中只能使用商业版 qt。
许可模式长久以来都是收费的只有商业版才可以使用但从 qt5.7 开始以 gplv3 许可针对开源用户提供给开源版使用。
主要特点美观、现代、性能好、易上手。。。由于使用了 qt graphics view 框架因此可以很轻松地被集成到现代用户界面。而且 qt charts 可用作 qwidgets、qgraphicswidget 或 qml 类型。通过选择一个图表主题可以轻松地创建令人印象深刻的图表。
主要功能提供了一组更受欢迎、易于使用的图表组件条形图、极坐标图、饼图、散点图、以及许多示例和主题。
来自kdab 的解决方案
基于qt model-view允许重用现有的数据模型来创建图表。
兼容性支持 qt4 和 qt5
最新版本kd chart 2.6.0
许可模式基于 gpl 或商业许可可自行选择。
主要特点用于创建业务图表是同类中最强大的 qt 组件。除了具有所有标准功能之外它能够使开发人员设计和管理大量的轴并提供复杂的定制。
主要功能提供了非常有用的甘特图包含gantt charts以及流行的图表条形图、折线图、饼图。通过使用 kdchartwidget可以简单地将图表集成到 qt 应用程序。
全称qt widgets for technical applications
基于qt widgets
最新版本qwt 6.1.3 发布日期2016/06/12
许可模式基于 lgpl 版权协议的开源项目
主要特点成熟、高效有良好的文档并提供了大量的示例与大量数千、数十万的点工作得很好。
主要功能包含了基本的 2d 图例如散点图、直方图、散点图还提供了刻度、滑块、圆盘、温度计、仪表盘等。
兼容性支持 qt4.6 - qt5.7
最新版本qcustomplot 2.0.0-beta发布日期2016/09/13
许可模式源代码和软件根据 gnu gpl 许可除非另有说明。
主要特点界面干净、简洁、小巧玲珑只有两个源文件没有进一步的依赖性很容易扩展并且有良好的文档。专注于制作好看出版高质量的 2d 绘图、图形和图表以及为实时可视化应用程序提供更高的性能。
主要功能提供了漂亮的 2d 图 例如曲线图、趋势图、坐标图、柱状图等。
注意可在项目中直接使用两个源文件或预先编译成库。
基于opengl 的 3d 绘图
最新版本qtiplot 0.9.9.8 release 版发布日期2016/12/12
主要特点用于交互式科学绘图和数据分析类似于专有程序 origin 或 sigmaplot在大学中被广泛使用。
主要功能支持 2d 和 3d 绘图具有一些高级功能例如统计分析、曲线拟合、图像分析工具。
注意虽然 qtiplot 开源免费但是免费指的是它的源代码其编译好的二进制代码也就是可执行文件是收费的因此如果你不想支付费用的话则可以使用 gpl 许可自己编译。
对于上述的图表库几乎都可以导出为各种格式例如pdf、svg、imagesbmp、ico、jpeg、png……等。
由于 qt 5.7 集成了以前用于商业的 qt charts使其可用于 lgplv3 许可下的开源版这使得 qt charts 更受欢迎。。。小伙伴们赶快行动吧还在等什么
图表库太多除了这些之外还有一些其他的库例如chartdirector。当然我们还可以选择强大的 js 图表库例如
……