Cra*_*rse 21 c simulation plot graph gnuplot
我是一名机械工程师,对C编程知之甚少.我写了一些代码来进行模拟,我想要模拟仿真结果.目前我Dev-C用来编写我的代码.使用fopen和fprintf命令我生成一个.dat包含结果的文件.然后我打开GNUPLOT程序并导入我的.dat文件以绘制结果.这需要时间,我必须等到模拟结束.有没有一种简单的方法可以连接我的绘图仪Dev-C,所以我的绘图仪在模拟过程中开始绘制数据?任何图书馆等?
Edg*_*net 13
既然你已经知道了gnuplot,最简单的方法就是从程序中调用gnuplot并将数据传递给它:
FILE *gnuplot = popen("gnuplot", "w");
fprintf(gnuplot, "plot '-'\n");
for (i = 0; i < count; i++)
    fprintf(gnuplot, "%g %g\n", x[i], y[i]);
fprintf(gnuplot, "e\n");
fflush(gnuplot);
好的,一种解决方案是,当您写入文件时,只需system()在写入文件时进行调用,然后调用 gnuplot.
但是,这意味着您应该每次都更改文件名,但我担心如果您这样做,它看起来会不正确,因为您每次都会发送少量数据。
http://www.gnu.org/software/libc/manual/html_node/System-Calls.html
我从未使用过 gnuplot,但如果您查看此页面 ( http://gnuplot-tricks.blogspot.com/ ),您可能会发现一些使其能够正常工作的技巧。
但是,我认为,除非您要自己绘制所有内容并跳过 gnuplot,否则您可能只需要等待即可。
您可能会发现 gnuplot 的 C 接口可以帮助您:
http://ndevilla.free.fr/gnuplot/