我用c++写了一个相当大的程序,现在有人想让我为它做一个GUI(在Windows上)。程序生成要绘制的数据。我知道我可以使用gtk+, Qt或MATLAB(使用MEX文件)来构建GUI。
由于我的程序是一个科学程序,其输出的一些数据应该进行后处理和绘图,那么上述方法如何相互比较?到目前为止,我一直使用MATLAB,因为我认为它有更多的内置工具可用于科学绘图和数据处理。因为程序的GUI对我来说不是很重要,所以易用性可能是最重要的因素。
我推荐使用Qt,因为:
- 它是跨平台的,并且覆盖了广泛的操作系统(包括移动)
- 用c++编写让你有机会使用库如STL, Boost等;
- 使用c++可以让你的应用程序高速运行
- 它是开源的,并且有快速的改进速度 它有一个很好的GUI设计器和一个非常有能力的IDE (Qt Creator)
- API设计出色,易于使用
- 它有一个很好的文档,很容易阅读
- 它有Qt翻译系统,使您能够拥有多语言应用程序
- GUI布局系统,小部件根据布局调整自己的大小,使一切变得更容易
- QML为您提供了创建具有出色图形和动画的梦幻GUI的功能
- 它对网络和连接(socket, SSL, www, IPC,…)有很大的支持 它有QTestLib用于测试代码
- 如果你不想使用c++,它有很多语言绑定
还有一些成熟的Qt绘图库,如QCustomPlot和QWT。
QCustomPlot是一个用于绘图的Qt c++库,专注于制作好看和高质量的2D绘图,图形和图表,以及为实时可视化应用程序提供高性能。
QWt为2D图提供了一个框架。