0

我正在为嵌入式系统开发算法并在 C++ 代码中实现它们。在目标上测试 c++ 代码之前,我必须在 PC 上测试算法以确保数学是正确的。为此,我创建了一个 mex 文件,以便可以在 Matlab 中验证输出。

带有 mex 文件的系统运行良好,但如果目的是对算法进行快速测试,则实施起来相当麻烦;那么有没有人推荐另一种工具来绘制 c/c++ 代码?我在这个站点上阅读了一些关于 gnuplot 和 QWT 的内容,但是我对 gnuplot 的掌握还不够好,无法确定它是否比 mex 文件更容易设置。

4

5 回答 5

2

那里有许多绘图包(GNUPlot、XFig、MATLAB、Excel 等),每个都有自己的优点和缺点。

但是,如果您可以访问 MATLAB 并对结果感到满意,为什么不简单地将程序中的数据输出到 .csv 文件并将其加载到 MATLAB 中呢?然后,您可以使用 MATLAB 绘制它,而无需执行 .mex 文件。

于 2011-08-03T13:31:10.370 回答
1

如果您知道并喜欢R,那么RInside可以轻松地将 R 嵌入到您的 C++ 应用程序中(至少对于测试版本,您不希望在嵌入式使用中使用它)。

在RInside 附带的众多示例中,有一些绘制了给定的函数和/或数据。我基本上是为同一个测试用例编写的。我的博客有一篇关于将其嵌入Qt的简短文章。

于 2011-08-03T13:45:00.213 回答
1

对于这个任务,任何数量的绘图实用程序,如gnuplotR等等。我认为您可能希望使用一个非常轻量级的导出例程来以csv文件格式尽可能简单地导出您的数据。然后,您可以创建脚本以使用任何实用程序绘制数据。

就个人而言,我不会为此使用matlab。您只是想在获得数据后尽快创建绘图,并且启动 matlab 并在其中运行脚本将比运行 gnuplot 脚本花费更长的时间。但是,如果您还想对数据运行过滤器和数学表达式,matlab 非常棒(当然还有octave!)

因此,您的问题没有真正的答案,除非您让我们更深入地了解您想要绘制的内容。有无数的绘图工具能够绘制基本的东西。

于 2011-08-03T13:39:31.003 回答
0

R具有出色的绘图功能,您可以使用RInside将 R 代码嵌入到 C++ 应用程序中。

正如其他人所提到的,可能是将您的绘图代码与您的应用程序完全分开。如果您的要求只是绘图工具可以读取充满数据的文本文件并以编程方式绘制散点图或直方图,那么 MATLAB 或许多其他工具将很容易满足要求。

于 2011-08-03T13:43:33.087 回答
0

PL图。

于 2011-08-03T13:26:49.450 回答