绘制和显示数组的简便方法?

时间:2010-11-14 05:52:40

标签: c arrays matrix plot

首先发布在这里。在Visual Studio 2008中使用C.如有必要,可以使用VS 2005。

  1. 如何在电子表格中显示数组中的数值数据?
  2. 如何在数组中绘制数值数据?
  3. 这些似乎是一个简单的问题。但我找不到解决方案。到目前为止,我将数据打印到文件,导入到Excel和视图/绘图。但是,使用此代码的阵列太多 - 因此打印/导入/绘图很累。 一些限制。

    1. 我不想写20多行代码来完成上述操作。 MATFOR或Array Visualizer允许您使用单行函数调用进行绘图。
    2. 他们无法以方便的格式显示数据。我想在一个或两个窗口中显示数据和绘图,以便它们可以同时显示。
    3. 这是一个win32控制台应用程序---所有代码都是可移植的。
    4. 将在调试期间使用这些。
    5. 免费或付费。
    6. 虽然我正在寻找特定的东西,但对于使用数组和矩阵进行数值处理的任何人来说,要求基本相同 - 同时显示数据和绘图。 我希望已经编写了这样一个工具并且可用。 我也对一个解决方案持开放态度,将数组数据输出到Excel工作表(可以保持Excel打开),如果它也可以绘制得很好,但我可以在没有绘图的情况下生活。

      PS:我只在调试代码时需要这个。

6 个答案:

答案 0 :(得分:1)

我使用ArrayDebugView这是您在Visual Studio中安装的插件,并在您调试应用程序时从数组中绘制图形。它在调试模式下作为可变监视的可视方式。你不需要写一行代码。

答案 1 :(得分:0)

我想不出任何能够在少于20行代码中在控制台应用程序中启用所需内容的库。我的建议是使用MATLAB og GNU Octave编写绘图步骤,以进行实际的绘图。

答案 2 :(得分:0)

为了在数组中显示数值数据,你应该将指向你要观察的第一个数据元素的指针添加到监视中 - 如果你想从头开始观察数组,它就只是数组name,它是指向第一个元素的指针。要查看多个元素,请在指针后添加“,”,然后添加要观察的元素数。 例如,为了观察float farray[100];的元素,您应该添加到监视farray,100

为了绘图,你可以从手表复制粘贴到你的绘图软件(即excel),但它不是很方便,因为你不能单独复制数据列,但是左边和右边的列也是如此,所以它涉及额外的手动编辑。

答案 3 :(得分:0)

我使用GNUPlot(http://www.gnuplot.info/)来显示我的性能/加速测量值。 我将我的数字打印到stdout并写了一个bash脚本,它结合了这些数字并调用gnuplot进行渲染。

答案 4 :(得分:0)

我为此目的制作了一个简单的绘图程序。我只粘贴数据的文本框和绘制数据的图表。

数据必须采用以下任何一种形式:

  • 使用自动X(每个值递增1): seriesName value
  • 指定了X和Y的
  • seriesName xvalue yvalue

我以前大部分时间都是从跟踪点绘制数据。 我复制/粘贴VS的整个输出窗口,绘图程序忽略了任何不遵循这两种形式的东西(所以我不需要清理字符串并将其放在excel中)。

它执行直线,点,列,面积图并保存图像,复制到剪贴板。

enter image description here

MiniPlot

答案 5 :(得分:0)

有几种方法可以做到这一点,但这需要编写一些代码。可视化数据通常很简单直接,但是按照您希望的方式可视化数据将需要一些额外的代码和工作。

有几种可视化数据的选项:

BASH和GNUPLOT的组合

使用MATLAB或OCTAVE进行所有计算和可视化

使用PYTHON和SciPy以及matlibplot库。

Gnuplot是绘制数据的好工具,但使用起来很麻烦。如果你花时间来获得正确的图表并且与LaTeX结合得非常好并且具有适合任意功能的实现,那么它看起来很棒。访问http://gnuplot-tricks.blogspot.ch/伟大的网站,了解有关gnuplot的所有信息。

数学程序如MATLAB及其开源等效OCTAVE非常棒,因为它们是数值程序的快速实现语言,并且具有广泛的附加库,尤其是MATLAB。对于高负载数值计算,它非常慢,并且绘图库仅适用于基本绘图需求。

使用PYTHON及其科学编程库(SciPy和matlibplot)是一个很好的组合。这样可以获得优秀的绘图,这些绘图不像gnuplot那样神秘,而且在绘图时比MATLAB更灵活。此外,它为您提供了像MATLAB这样的数字编程环境。