C ; X ou console ; tracer une courbe - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 15-11-2006 à 20:10:15
tu peux préciser ta demande ?
tu fournis à gnuplot une liste de coordonnées ? tu les as dans un fichier ? c'est du live ?
Marsh Posté le 15-11-2006 à 20:13:16
ces coordonnées sont soit passées au fur et à mesure soit par une liste de coordonnées ...
En gros je peux avoir :
1) 2 variables x,y qui vont évoluées au fil du temps
ou
2) Une tableau de variable x,y
Je devrais pouvoir fournir les deux.
Je prefererais tout de même que la courbe se trasse en ""temps réel""
Mon problème principal est donc de faire la liaison entre le code C et le traceur(par exemple gnuplot)
Marsh Posté le 15-11-2006 à 21:05:41
J'ai déjà eu l'occasion de faire un truc comme ça, et j'avais utilisé la méthode suivante, qui marche pas mal :
1- tu exécutes gnuplot derrière un tuyau avec popen() en écriture
2- à chaque fois que tu veux tracer des données, tu envoies à gnuplot à travers le tuyau une commande de tracé sur le modèle suivant:
plot '-' using 1:2 |
Marsh Posté le 16-11-2006 à 10:04:39
oki merci
ca a l'air interessant comme methode (chuis pas sur de tout comprendre la mais je vais me renseigner)
Marsh Posté le 16-11-2006 à 12:08:43
ReplyMarsh Posté le 16-11-2006 à 12:24:31
qd j'avais eu à faire ça (il y a très longtemps), je passais directement dans la RAM video (asm inside aussi)
donc pas applicable dans ton cas.
sinon en C, il y a des fonctions de traçage dans l'API X (xorg) notamment pour faire
une trace dans la fenetre en cours. faut juste avoir le bon include
Marsh Posté le 16-11-2006 à 12:34:28
c'est bon est plus à l'age de pierre ... :
- gnuplot a certainement une API
- il y a certainement des toolkits C orienté graphes
- sinon y a des produits généralistes comme gtk ou cairo.
Marsh Posté le 16-11-2006 à 23:33:39
Taz a écrit : ça à l'air dégeux. Y a sans doute une API pour gnuplot. RTFM. |
A l'époque, j'avais trouvé une bibliothèque C qui permettait d'encapsuler des appels à gnuplot (je crois que c'était celle là :http://ndevilla.free.fr/gnuplot/).
En regardant les sources, je m'étais rendu compte que c'était codé avec des popen comme je l'ai décrit la seule différence était qu'ils écrivaient toutes les données dans un fichier temporaire et demandaient à gnuplot de tracer les données du fichier plutôt que de les envoyer dans le tuyau. C'est pour ça que j'avais préféré recoder le tout à la main pour éviter de perdre mon temps à faire des écritures disques.
Maintenant, s'il y a directement une API gnuplot en C, c'est sans doute mieux (mais je ne suis pas sûr que ça existe)
Marsh Posté le 17-11-2006 à 00:30:01
Reply
Marsh Posté le 15-11-2006 à 19:31:01
Bijour les gens,
J'ai un petit problème ... et comme je suis pas doué en prog
Je souhaiterais pouvoir tracer une courbe à partir des coordonnées de points (x,y).
J'ai vu gnuplot qui pourrait faire ca ... mais comment le connecter avec le C ... ?!?
Sinon existe-t-il d'autres méthodes simples ?
Ma priorité est "au plus simple au plus vite" si vous voyez ce que je veux dire même du vieux Xdialog ca me va ou en console
Si vous avez des liens
Merci d'avance