сохранить график как png в gnuplot и C - PullRequest
4 голосов
/ 03 сентября 2011

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

Ответы [ 2 ]

4 голосов
/ 03 сентября 2011

Вы хотите set terminal png вместо.

0 голосов
/ 04 сентября 2011

Почему бы не использовать MathGL (библиотека черчения GPL), которая может выполнять собственный экспорт в PNG / EPS / SVG / ... и может делать это даже в консоли (т.е. без X)?

...