我正在为嵌入式系统开发算法,并用c++代码实现它们。在目标上测试c++代码之前,我必须在PC上测试算法,以确保数学计算正确。为此,我创建了一个mex文件,以便可以在Matlab中验证输出。
使用mex文件的系统工作得很好,但是如果目的是快速测试算法,那么实现起来就相当麻烦;那么,有没有人推荐其他工具来绘制c/c++代码呢?我在这个站点上读到了一些关于gnuplot和QWT的东西,但是我还没有很好地掌握gnuplot,看看它是否比mex文件更容易设置。
发布于 2011-08-03 21:31:10
有很多绘图包(GNUPlot、XFig、MATLAB、Excel等等),每个包都有自己的优点和缺点。
但是,如果您可以访问MATLAB并对结果感到满意,为什么不简单地将数据从您的程序输出到.csv文件并加载到MATLAB中呢?然后,您可以使用MATLAB绘制它,而不需要实现.mex文件。
发布于 2011-08-03 21:39:31
对于此任务,可以使用任意数量的绘图实用程序,如gnuplot、R等。我认为您可能希望使用一个非常轻量级的导出例程来尽可能简单地导出数据,例如csv文件格式。然后,您可以使用任何实用程序创建脚本来绘制数据。
就我个人而言,我不会使用matlab来实现这一点。您只想在获得数据后尽快创建绘图,并且启动matlab并在其中运行脚本所需的时间比运行gnuplot脚本要长得多。但是,如果您还想对数据运行过滤器和数学表达式,matlab是很好的选择(当然还有octave!)
所以你的问题没有真正的答案,除非你给我们更多一点关于你想要绘制的东西的洞察力。有无数的绘图工具能够绘制基本的东西。
发布于 2011-08-03 21:45:00
如果您知道并喜欢R,那么RInside可以很容易地将R嵌入到您的C++应用程序中(至少对于测试构建来说,您不希望在嵌入式使用中出现这种情况)。
在RInside附带的许多示例中,有一些绘制给定函数和/或数据的示例。我基本上是为相同的测试用例编写的。我的博客有一个关于在Qt中嵌入这个的short write-up。
https://stackoverflow.com/questions/6927116
复制相似问题