如何绘制C ++ Win32控制台应用程序的输出?

时间:2009-05-15 09:54:00

标签: c++ winapi plot charts

我有一个小型Win32控制台应用程序,它本质上是一个测试工具。我读取数据,对其进行一些处理,目前只是将一些数字输出到控制台。这不是一个大问题 - 我可以了解数据的样子,但是如果有一种方法可以将信息输入到每次运行软件的图形中,那么分析会更容易。

我最近一直在处理GNUPlot,但无法找到一种简单的方法来获取发送给它的数据。有没人试过这个? ..或者我应该尝试另一个图形应用程序吗?

Excel和OO Calc是很棒的工具,我已经将.csv数据加载到它们中,以便自己多次绘制数据。但是,我希望有一种方法可以动态地将数据传输到图形应用程序中,以避免每次我想查看某些数据时关闭/重新打开excel并绘制图形。

我认为你可以将数据传输到GNUPlot(这就是为什么我提到它),但是如何这样做的细节相当少。

7 个答案:

答案 0 :(得分:5)

一种简单的方法是将数据作为CSV重新输入,然后将其导入Excel或OpenOffice等电子表格中以进行图形绘制。

编辑:关注您的问题后,我自己对GNUPlot感兴趣 - 这是我在命令行中使用它的最简单描述:http://www.goldb.org/goldblog/CommentView,guid,f378e279-eaa5-4d85-b7d2-0339a7c72864.aspx

答案 1 :(得分:3)

永远不要低估Excel和.csv数据转储的强大功能。

将数据写入.csv文件形式C ++并不是很困难,并且有很多关于该主题的文章,例如:here,或者只是google。

Excel可以轻松加载.csv,然后您可以使用它来绘制您需要的任何图形。如果您只想对结果进行快速视觉健全检查等,这一点特别有用。

答案 2 :(得分:1)

您可能还想查看XMGrace,它允许您启动它并从C / Fortran程序中直接驱动它,如图所示here

答案 3 :(得分:1)

您真的不需要触摸VBA来执行此操作

在Excel中,您可以设置与文件的数据连接,它支持多种文件类型,但CSV可以正常工作。

  • 转到列表项
  • 数据标签
  • 点击连接
  • 点击添加
  • 选择文件
  • 转到连接属性 - 文件名的取消勾选提示
  • 设置所需的时间段。
  • 关闭连接对话框
  • 选择用于导入数据的起始单元格 - 工作表2上的单元格1a
  • 点击现有连接
  • 选择您的数据连接
  • 翻到工作表1添加图表并连接数据。

图表现在会自动更新

这是Excel 2007 - 但是认为旧版本有这个,我认为OO可以做到。

答案 4 :(得分:0)

我刚在卡迪夫大学的网站上找到an example of piping data into gnuplot。尚未尝试过,但看起来很有前途!

[edit] ..和another which includes some notes for windows

答案 5 :(得分:0)

Excel完全可以编写脚本。使用宏录制器找出步骤。在自己的工作表中创建图表。然后使用GIF过滤器保存图表。

实际导入类似于:

ActiveChart.Export FileName:= something_dot_gif,FilterName:=“GIF”

答案 6 :(得分:0)

你可以使用MathGL - 它可以创建一个窗口(FLTK,GLUT或Qt)并在里面显示图。它还有大量的绘图类型,可以在控制台中工作。