Tuteur pour le logiciel GNUPLOT

novalid      

Texte du Tuteur écrit par Gilles HUNAULT à partir d'un document de Philippe ALBERT.

Une liste des autres tuteurs (langages, logiciels, systèmes d'exploitations...) est accessible par Mosaic...


Le site officiel de gnuplot est http://www.gnuplot.info/ avec son manuel
en anglais. Un manuel en français est aussi disponible.


1. INTRODUCTION


    GNUPLOT est un logiciel de tracé de courbe qui existe sous DOS, Windows,
    UNIX, VMS, OS/2, Atari, Amiga. L'utilisateur passe par une ligne de commande
    dont le prompt est :

       gnuplot>

    On peut saisir plusieurs commandes sur une même ligne en les séparant par
    un point virgule. Les chaines de caractères doivent être indiquées entre
    quotes (simple ou double). Exemples :

       load "filename" 
       cd 'dir'        

    On peut étendre une suite de commandes à plusieurs lignes en terminant
    chaque ligne (sauf la dernière) par un antislash (\).

    La commande HELP donne accès à l'aide de Gnuplot.
    La syntaxe de l'aide est : help
                         ou  : help < sujet > 

    Les commandes EXIT et QUIT permettent de sortir
    de Gnuplot. CLEAR efface l'écran.
    Gnuplot dispose également d'un historique des commandes
    passées, que l'on récupère grâce aux flêches de
    déplacements (help history pour plus de détails).

2. PLOT ET SPLOT


    Les commandes PLOT et SPLOT sont les plus
    importantes puisqu'elles vont tracer les courbes.
    PLOT trace une courbe en 2D et SPLOT une courbe 3D.

    Leur syntaxe exacte est :

    PLOT {ranges} { | {"" {using...}}}
                     {title} {style} {,  {title} {style}...}

    SPLOT {ranges} { | {"" {using...}}}
                     {title} {style} {,  {title} {style}...}

    {} indique un argument optionnel
    |  indique un choix

    Une commande plot peut être,
    Aussi simple que :
                        PLOT sin(x)

    Ou aussi complexe que :
    PLOT [t=1:10] [-pi:pi*2] tan(t), "data.1" using 2:3 with lines,
          t**2 with points

3. FONCTIONS


  Gnuplot accepte de nombreuses fonctions, parmis lesquelles :

   abs    valeur absolue
   acos   arc cosinus
   asin   arc sinus
   atan   arc tangente
   cos    cosinus
   exp    exponentiel
   int    renvoi la partie  entière de son argument
   log    logarithme
   log10  logarithme en base 10
   rand   random (renvoi un nombre entre 0 et 1)
   real   partie real
   sgn    renvoi 1 si l'argument est positif, 0 s'il
          est nulle, et -1 s'il est négatif
   sin    sinus
   sqrt   racine carré
   tan    tangente

   help expressions functions pour avoir la liste totale

4. OPERATEURS


   Symbole      Exemple         Explication



     **           a**b           exponentiation
     *            a*b            multiplication
     /            a/b            division
     %            a%b            modulo
     +            a+b            addition
     -            a-b            soustraction
     ==           a==b           égalité
     !=           a!=b           inégalité
     &            a&b            ET
     ^            a^b            OU exclusif
     |            a|b            OU inclusif
     &&           a&&b           ET logique
     ||           a||b           OU logique
     ?:           a?b:c          opération ternaire

5. FICHIERS DE DONNEES


    L'un des principaux intérêt de Gnuplot est qu'il peut
    utiliser des fichiers de données au format texte.
    Ansi, par exemple, comparons des données du fichier
    population.dat à une courbe théorique :

    pop(x)=103*exp((1965-x)/10)

    plot [1960:1990] 'population.dat', pop(x)
    plot [intervalle] 'fichier_de_données',Courbe théorique


    Le fichiers population.dat contient :


      # Population en Antartique depuis 1965
      1965  103
      1970   55
      1975   34
      1980   24
      1985   10



    Les fichiers de données doivent contenir au moins une
    donnée par ligne.

    Les lignes commencant par  #  sont traitées comme
    des commentaires.

    Chaque série de données représente un couple (x,y)
    pour la commande PLOT, ou un triplet (x,y,z) pour la
    commande SPLOT.

    La valeur x pour PLOT, ou les valeurs x et y pour SPLOT,
    peuvent être omises. Elles seront remplacées par une
    valeur qui débutera à 0 et s'incrémentera de 1 à chaque
    nouvelle série.


6. RANGE


    L'option RANGE spécifie la région du graphique qui
    va être affichée.
    Syntaxe :

     [ : ] [ : ] [ : ]

    Les termes minimaux et maximaux, ainsi que les (:) sont
    optionnels.

    Exemples :

    plot cos(x)                utilise les intervalles courants
    plot [-pi:pi] tan(x)       redéfinie l'intervalle pour X
    plot [-pi:pi][-3:3] tan(x) redéfinie les intervalles pour X et Y
    plot [][-3:3] 1/x          redéfinie l'intervalles pour Y

    help range pour plus de détails.


7. USING


    On peut sélectionner le format des données d'un fichier
    avec l'option USING. On peut notement faire un choix
    sur les colonnes à utiliser pour tracer la courbe.

    PLOT 'nom_fichier' USING ::

    Exemple : # Population en Antartique depuis 1965
              1965  103  85
              1970   55  30
              1975   34  12
              1980   24   7

    PLOT 'population.dat' USING 1:3,\
         'population.dat' USING 1:2

    Deux courbes sont tracées. L'une a pour ordonné la
    troisième colonne de données, l'autre la seconde. Mais
    les deux ont comme abscisse la première colonne.
    help using pour plus de détails...

8. STYLE


    Les courbes peuvent être tracées en un des huits styles
    proposés par Gnuplot :

        boxes            rectangles verticaux
        dots             petits points
        errorbars        points et barre verticale d'erreur
        impulses         lignes verticales
        lines            lignes
        linespoints      lignes et points
        points           points
        steps            marche d'escalier

    Utiliser help pour plus de précisions sur chaque
    style.

    Syntaxe : PLOT ''  WITH 

    Exemple : PLOT 'population.dat' with linespoints

9. TITRES


    Le titre de chaque courbe apparait sur le graphique.
    Par défaut ce titre est le nom de la fonction ou le nom
    du fichier de données.
    Ce nom peut être changé en utilisant l'option  TITLE .

    Syntaxe :
      title ''

    Exemple :
      PLOT 'population.dat'  title 'Population en Antartique'


    help title pour plus de détails.

    On peut de plus donner un titre au graphique avec
    l'option  SET TITLE

10. SET ET SHOW



    La commande  SET  permet de définir un grand nombre d'options
    qui seront appliquées par la commande  SHOW .

     SHOW ALL  montre toutes les options.

    La ligne de commande  SET  précède celle du  PLOT .

    Exemple :

          SET angles radians
          SHOW angles
          PLOT cos(x)


11. PRINCIPALES OPTIONS


    Voici quelques unes des options que l'on peut définir grâce à
    la commande  SET  :


     angles           Choix du type d'angle

     autoscale        calcul automatique des échelles
     noautoscale      ou non ...

     grid             Apparition d'une grille sur le graphique

     label            Permet de légender les axes

     output           Permet de définir la sortie
                          (écran, imprimante, ...)



     size               Définition de la taille du graphique

     style              Définition du style du graphique

     title              Donne un titre au graphique

     terminal           Définition du type de terminal utilisé
                            (type d'imprimante, ...)


     De nombreuses autres options sont disponibles :

       help set pour en avoir la liste.

       help set  pour la syntaxe.

12. LOAD


    La commande LOAD éxécute chaque ligne du fichier
    d'entrée spécifiée à sa suite.
    Ce fichier d'entrée est un fichier texte contenant une
    suite de commande.

    Exemple : Soit le fichier FIBO.GPL qui contient la
    commande :  PLOT 'FIBO.DAT' with linespoints

     LOAD FIBO.GPL  va tracer la courbe déterminée par
    les valeurs contenues dans le fichier FIBO.DAT

    Cela peut paraître n'avoir que peut d'intérêt du fait du
    faible nombre de commandes que contient ce fichier.
    LOAD CYCLE.GPL  est plus intéressant quand on sait
    que ce fichier contient :


13. EXEMPLE(s)


set title ' Modelisation du cycle '
set grid
set sample 500
set dummy x
set xrange [0:60]
set yrange [-10:10]
set xlabel ' Minutes '
set ylabel ' Q(H+) / Litre '
set function style lines

# relachement du dispositif  avec Weibull
   g1(x) = -((sigma*(x-arro))**alpha)
   g(x)  = bb * (1 - exp(g1(x)) )
# vitesse constante pendant la phase d'arrosage
   h(x)  = aa * (x-arro)
# La somme des deux
   f(x)  = g(x) + h(x)



# La fonction prenant un cycle entier
   Cycle(x) = (x<=bras) ? rele : (x==bras) ? ww : \
              (x==bras) ? base : (x<=arro) ? base : f(x)

  base =  0
  rele = -5
  arro = 10