Questions et/ou problèmes 


A la compilation, j'obtiens les erreurs suivantes :

/tmp/ccQUhGL1.o: In function `main':
/tmp/ccQUhGL1.o(.text+0xba): undefined reference to `cpgopen'
/tmp/ccQUhGL1.o(.text+0xf4): undefined reference to `cpgenv'
/tmp/ccQUhGL1.o(.text+0x108): undefined reference to `cpgline'
/tmp/ccQUhGL1.o(.text+0x110): undefined reference to `cpgend'
collect2: ld returned 1 exit status
 

    Le problème : vous avez compilé votre programme toto.c en faisant simplement cc toto.c -o toto et en oubliant les librairies graphiques.

    La solution : reportez-vous au paragraphe compilation
 


A l'éxécution, il ne trouve pas le fichier grfont.dat :

 %PGPLOT, Unable to read font file: .
 %PGPLOT, Use environment variable PGPLOT_FONT to specify the location of the PGPLOT grfont.dat file.

    Le problème : deux variables d'environnement sont mal ou pas définies. Les bonnes valeurs sont :
PGPLOT_DIR = /usr/lib/pgplot
et
PGPLOT_FONT = /usr/lib/grfont.dat

    La solution : copiez dans votre répertoire principal le fichier /users/licence/etudiant/.bash_profile, fermez votre session et ouvrez-en une nouvelle.
 
 


Quand on met une palette de couleurs avec cpgslut, les caractères de la légende disparaissent.


    Le problème : la couleur de la légende est généralement blanche, cela correspond à la couleur 1 (voir cpgsci). La mise en place de la palette a changé la couleur 1 qui peut etre devenue noire. D'ou disparition apparente des caratères en noir sur fond noir.

    La solution : Tentez un cpgsci(255) avant l'affichage de texte et même avant cpgenv.
 



 

Quand cpgopen("?") pose une question, il continue sans laisser le temps d'y répondre


    Le comportement est le même avec cpgend() qui ferme la fenètre sans laisser le temps de regars laisser le temps de regarder la courbe.

    Le problème : la fonction scanf() a été utilisée pour lire une variable au clavier. PgPlot utilise la fonction gets(), les deux ne font pas bon ménage.

    La solution : Déclarez une variable chaine de caractères (char ch[10];) et faites un gets(ch) juste avant l'appel à cpgopen()
 


Comment imprimer un graphe ?

    La sortie graphique à utiliser est "/ps". Un fichier pgplot.ps est alors créé. Imprimez-le à la sortie du programme en tapant : lpr pgplot.ps

Voir la documentation sur cpgbeg
 


Quand on imprime une image faite avec cpgimag, ça sort tout noir ou tout blanc...

    Pour l'impression (option "/ps") remplacez cpgimag par cpggray (même syntaxe, mêmes arguments que cpgimag)


Indices, exposants et caractères grecs

    PgPlot permet d'afficher des caractèreser des caractères spéciaux lors de l'utilisation par exemple de cpglab ou  de cpgtext . Voici quelques règles.