|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : appel de gnuplot a partir d'un prog en c++ [ Divers / Divers ] (keno83)
Informations & options pour cette discussion
jeudi 10 août 2006 à 00:08:30 |
appel de gnuplot a partir d'un prog en c++

keno83
|
bonjour,
je vous explique un peu la situation: j'ai un fichier .txt avec
plusieurs colonnes et j'aimerai faire un graphe des colonnes 2,3
etc en fonction de la colonne 1...
D'apres les quelques recherches que j'ai faite, il faudrait que j'utilise 'using' dans la syntaxe gnuplot.
J'aimerai donc savoir comment je peux directement appeler gnuplot a
partir d'un programme c++ pour que l'afficahge du graphe se fasse
directement à l'execution du programme.
Il me semble qu'il faut utiliser la fonction 'system' mais je n'en suis pas sur
Si quelqu'un peut m'aider...
|
|
|
jeudi 10 août 2006 à 09:43:48 |
Re : appel de gnuplot a partir d'un prog en c++

turnerom
|
Oui, c'est ca; tu dois utiliser system.
Essaye deja de trouver la bonne ligne de commande en la tappant
directement dans la console, une fois que tu la trouver, tu l'appel
dans ton prog avec system :
system("gnuplot argument");
TuRn3r
|
|
|
jeudi 10 août 2006 à 21:25:44 |
Re : appel de gnuplot a partir d'un prog en c++

keno83
|
ok
et est ce qu'il est possible de faire varier une variable dans l'argument
Par la je veux dire, j'ai un fichier avec plusieurs colonnes.
Pour faire le graphe de la colonne 2 en fonction de la colonne 1 j'aurai dans l'argument quelque chose du genre 'using 1:2'...
serait il alors possible de faire varier le 2 du genre a avoir
for (k=0,k<size,k++)
system('........using 1:k')
|
|
|
jeudi 10 août 2006 à 21:38:07 |
Re : appel de gnuplot a partir d'un prog en c++

turnerom
|
oui, formatte la chaine avant de l'envoyer
std::stringstream cmd: for (k=0,k<size,k++) { cmd << "gnuplot using 1:" << k ;
system(cmd.str.c_str()); }
ou si tu est en C utilise sprintf à la place, l'idée reste la même
TuRn3r
|
|
|
jeudi 10 août 2006 à 21:40:50 |
Re : appel de gnuplot a partir d'un prog en c++

turnerom
|
oui, tu es en C++, j'avias pas vu, fais ca ca devrai marcher (si la syntaxe est bonne)
std::stringstream cmd; for (size_t k=0, k<size, k++) { cmd << "gnuplot using 1:" << k ;
system(cmd.str().c_str()); }
TuRn3r
|
|
|
jeudi 10 août 2006 à 22:40:25 |
Re : appel de gnuplot a partir d'un prog en c++

keno83
|
merci pour tes reponses j'essaie ca de suite...
par contre petite question pour comprendre un peu ce que tu m'indiques:
pourquoi le 'size_t' devant k=0,k<size,k++)
qu'est ce que cela signifie
deuxieme petite question: il doit y avoir un en-tete a rajouter pour utiliser stringstream,non
et derniere question: si je me fie a tes dires, la syntaxe de mon programme doit donc etre:
std::stringstream cmd;
for(size_t k=0;k<size;k++)
{
cmd<<"gnuplot plot 'res.txt' using 1:"<<k;
system(cmd.str().c_str());
}
En tout cas merci beaucoup pour toutes tes indications
|
|
|
jeudi 10 août 2006 à 23:48:11 |
Re : appel de gnuplot a partir d'un prog en c++

turnerom
|
pourquoi le 'size_t' --> size_t correspond à un unsigned int, c'est exactement pareil mais plus sourt à écrire (faignantise pure)
deuxieme petite question: il doit y avoir un en-tete a rajouter pour utiliser stringstream,non --> oui : <sstream>
et derniere question: si je me fie a tes dires, la syntaxe de mon programme doit donc etre:
std::stringstream cmd; for(size_t k=0;k<size;k++) { cmd<<"gnuplot plot 'res.txt' using 1:"<<k;
system(cmd.str().c_str()); } --> oui mais pourquoi ton fichier est entre ' ', je suis pas sur que ce soit utile (à vérifier néanmoins)
TuRn3r
|
|
|
vendredi 11 août 2006 à 21:55:09 |
Re : appel de gnuplot a partir d'un prog en c++

keno83
|
merci pour toutes tes indications, je pense arriver a la solution
par contre petit souci:
lorsque j'ecris cmd<<"gnuplot plot 'res.txt' using 1:"<<k
a l'execution, le compilateur me dit qu'il ne trouve pas le fichier
plot, ce qui laisse penser que la déclaration 'gnuplot plot 'res.txt'
using ... n'est pas la bonne...
si quelqu'un sait quelle est la syntaxe a utiliser
merci d'avance
|
|
|
mercredi 27 juin 2007 à 10:29:03 |
Re : appel de gnuplot a partir d'un prog en c++

fabienquillet
|
je voudrai appeller la fonction gnuplot avec un programme c est ce que tu connais la syntaxe
merci d'avance
|
|
|
mercredi 27 juin 2007 à 10:37:29 |
Re : appel de gnuplot a partir d'un prog en c++

turnerom
|
gp = popen(GNUPLOT_PATH,"w"); if(gp == NULL){ fprintf(stderr, "Oops, I can't find %s.", GNUPLOT_PATH); exit(EXIT_FAILURE); } fprintf(gp,"reset \n"); fprintf(gp,"set term windows \n"); fflush(gp); fprintf(gp,"set grid x y \n"); fflush(gp); fprintf(gp,"set title \"Répartition des nombres générés par le pnrg r250 pour %d de tirages\" tc lt 0 \n",max_generation); fflush(gp); // fprintf(gp,"set xlabel \'Ensemble\' tc lt 0 \n"); // fflush(gp); fprintf(gp,"set ylabel \'Nombre de tirages \' tc lt 0 \n"); fflush(gp); fprintf(gp,"set xr [0:1]\n"); fflush(gp); fprintf(gp,"set yr [0:%d]\n",(int)(1.2*max_generation/nbr_case)); fflush(gp); fprintf(gp,"set xtics\n"); fflush(gp); fprintf(gp,"set ytics\n"); fflush(gp); fprintf(gp,"plot \'%s\' u 1:2 title \"\" with boxes fs solid 0.7\n",fp1); fflush(gp); fprintf(gp,"set nokey \n"); fflush(gp); fprintf(gp,"set label \"{/Symbol c}^2 = %f\" tc lt 16 at 0.1,%d \n",chi_2,(int)(1.1*max_generation/nbr_case)); fflush(gp); fprintf(gp,"set label \"dl = %d\" tc lt 16 at 0.4,%d \n", (int)(nbr_case-1),(int)(1.1*max_generation/nbr_case)); fflush(gp); fprintf(gp,"set label \"{/Symbol c}^{2}_{crit}(%d,%1.2f)= %3.3f\" at 0.65,%d\n", (int)(nbr_case-1.),0.05,123.54, (int)(1.1*max_generation/nbr_case)); fflush(gp); fprintf(gp,"set encoding iso_8859_1 \n"); fflush(gp); fprintf(gp,"set term post eps landscape enhan mono \"Times-Roman\" 18 \n"); fflush(gp); fprintf(gp,"set output \"%s.eps\"\n",fp2); fflush(gp); fprintf(gp,"replot\n"); fflush(gp); getchar(); fprintf(gp,"reset\n"); fflush(gp); fclose(gp);
TuRn3r
|
|
|
Cette discussion est classé dans : partir, appel, prog, colonnes, gnuplot
Répondre à ce message
Sujets en rapport avec ce message
Lancer un autre fichier à partir d'un prog en C++ [ par trinitacs ]
J'aimerai lancer un .bat à partir de mon prog en C++. Coment dois-je faire?Est-ce que le .bat peut s'éxécuetr de manière différentes suivant la manièr
Appel dll VB6 à partir de C++ [ par stof35 ]
Bonjour,Je dois réaliser l'intégration d'une DLL écrite en VB6 par un prestataire externe dans un projet C++. J'ai essayé par des moyens classiques ma
Raccourci-savoir si mon prog est lancé à partir d'un raccourci [ par Nomis ]
Bonjour,Win98SE,MeAvec les API: comment savoir si mon programme est lancé à partir d'un raccourci (ex: prog.lnk sur le bureau faisant référence à prog
appel d'une fonction [ par dletozeun ]
bonjour,Je voudrais savoir s'il est possible d'appeler une fonction dont ont ne connais pas le nom dans le prog lui meme, mais en le recuperant dans u
Executer un prog linux(commandes) a partir d'un prog windows(C++) [ par angeljp ]
Salut,Je voudrais savoir s'il est possible d'executer à partir d'un PC sous Win2k un programme se trouvant sur une station Linux ?Autre chose : je vou
Appel de fonction VB a partir de C++ [ par sekatirex ]
bonjour, jvoudrai savoir si on peu appeler un fonction ou program écrit en VB5 a a partir d'une programme en C++.!
Appel de fonction VB a partir de C++ [ par sekatirex ]
car en fet je voudra fer un programme ki utile deux otre programme dont 1 en c++ et lotre en VB!en c++ c un programm de dessin et en vb un ocr !en mél
Lancement d'une appli a partir d'un prog [ par kididouille ]
Bonjour à tous!J'ai une ptite appli MFC et je voudrai lors d'un appui sur un bouton ouvrir wordpad bloc note ou un editeur de texteQuels sont les com
Piloter excel a partir d'un prog externe. [ par SnOOpss ]
Bonjour, bon je pense que le titre est assez explicite, en fait j'ai trouvé la source suivante http://www.cppfrance.com/codes/AUTOMATISER-EXCEL-SANS-M
Appel fonction avec GTK+ [ par ptityo31 ]
Bonjour,je débute sur GTK+, et j'aimerai avoir des précisions sur le lancement d'une application à partir d'un clic.En effet je dois envoyer des trame
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version

HTC G1
Entre 449€ et 449€
|