我已经能够使用gnuplot在运行程序时绘制图形,但现在我想将这些图形写入文件。以下代码打开一个图形并创建了一个png文件,但是该png文件无法打开(Gimp显示它已损坏)。我承认我并不真正理解我所编写的代码,因为它是从网上的片段中复制来的。有人知道问题出在哪里吗?我想要做的就是将我的散点图保存为一个png文件。
#include <iostream>
#include "gnuplot_i.h"
#include <math.h>
using namespace std;
int main() {
double average_distance[5] = {1, 3, 5, 2, 4};
double x_coord[5] = {1, 2, 3, 4, 5};
gnuplot_ctrl* h1 = gnuplot_init();
gnuplot_setstyle(h1, "points");
gnuplot_cmd(h1, "set output 'test-plot-1.png'");
gnuplot_plot_xy(h1, x_coord, average_distance, 5, "plot");
gnuplot_cmd(h1,"set terminal x11" );
sleep(400);
return 0;
}