2012-06-22 2 views
1

J'ai un tube à gnuplot que j'utilise pour représenter graphiquement un fichier. Le fichier est très bien graphique et est produit sur l'écran, mais quand j'essaie de piper set terminal jpeg et set output file.jpeg je reçois des ordures sur l'écran. Quelqu'un d'autre a eu le même problème. Voici le code:Piping set terminal to gnuplot pipe produit des ordures à l'écran

FILE *gnuplotPipe = popen("gnuplot -persist","w"); 
    fprintf(gnuplotPipe, "set terminal jpeg\n");  //without these two lines it works 
    fprintf(gnuplotPipe, "set output %s.jpeg\n ",fileName); 

    int i = 2; 
    if (gnuplotPipe) 
    { 
     fprintf(gnuplotPipe, "plot "); 
     ....//plot some stuff,it is tested works. 
     } 
     fprintf(gnuplotPipe, "\n"); 
     fflush(gnuplotPipe); 
     fprintf(gnuplotPipe,"exit \n"); 
     pclose(gnuplotPipe); 
    }  

J'ai également essayé de vidanger après les deux commandes mais sans résultat.

Répondre

2

Vous devez placer le nom de fichier entre guillemets comme:

fprintf(gnuplotPipe, "set output \"%s.jpeg\"\n ",fileName); 
Questions connexes