我正在多次调用某些函数(5000-10000)并测量每次完成函数执行所需的时间。
例如:二维搜索,10个整数,11个整数,1000个整数... 现在我想绘制每一步完成搜索所需的图表。
我的整数数量为X,时间为Y.但我不知道如何将点连接到制作图表,Visual Studio 2015中是否有任何函数或库可以帮助我绘制图形?比如borland的“graphics.h”
编辑:使用Windows 10和Visual Studio 2015
答案 0 :(得分:1)
标准C ++ 11或C ++ 14没有任何图形库。
但是你应该考虑使用Qt,一个用于C ++的免费软件跨平台GUI库。我想你会很高兴使用Qt graphics view框架。您还可以考虑其他一些特定的操作系统widget toolkit。或者只使用libcairo 输出 2D图形。
另一种可能性是输出一些文本文件(对于GNUplot,在JSON中,在SVG中,为CSV中的某些电子表格输出...等)并使用一些外部程序显示该图形(以文本格式)。你甚至可以在它们之间使用一些inter-process communication(例如一些FIFO或pipeline,_popen
或better)。
BTW Windows是AFAIK而不是实时操作系统,但您并不需要实时评论,只需要一些交互性。 IMHO流水线到GNUplot很容易(至少在Linux上,也可能在Windows上......)。
答案 1 :(得分:-1)
我使用" windows.h"正如我在This link中看到的那样绘制一条线然后从搜索功能和绘制线中执行时间
它不是完全在控制台中绘图,而是在屏幕上绘图。但它完成了这项工作。
for (int i = 10000;i <= 100000;i += 500) {
logarithm bSearch;
//Measuring the time of binary search with the array of 'i' e
searchResult = bSearch.BinarySearch(i);
j = searchResult.getTime();
//Here is drawing the line
BCX_Line(hConWnd, width / 2 + i / 500 - 1 -20, height / 2 - j + 2, width / 2 + i / 500 - 20, height / 2 - (j), Cyan);
}