Мне удалось использовать 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;
}