C ; X ou console ; tracer une courbe

C ; X ou console ; tracer une courbe - Codes et scripts - Linux et OS Alternatifs

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

Reply

Marsh Posté le 15-11-2006 à 19:31:01   

Reply

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 ?


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

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)


Message édité par GUG le 15-11-2006 à 20:14:04
Reply

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
x1 y1
x2 y2
x3 y3
e


 


---------------
TriScale innov
Reply

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)

Reply

Marsh Posté le 16-11-2006 à 12:08:43    

ça à l'air dégeux. Y a sans doute une API pour gnuplot. RTFM.

Reply

Marsh 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 ;)

Reply

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.

Reply

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 :spamafote: 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)


---------------
TriScale innov
Reply

Marsh Posté le 17-11-2006 à 00:30:01    

Taz a écrit :

ça à l'air dégeux. Y a sans doute une API pour gnuplot. RTFM.


 
.net way of thinking [:arcueid brunestud]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed