La passion du libre

Débuter avec gnuplot

Cliquez sur le bouton pour afficher les conseils de lecture.Cliquez à nouveau pour les masquer

Fenêtres surgissantes explicatives

Certains mots dans le texte, affichés en vert et en gras, sont précédés d'une étoile verte sur fond orange. Par exemple, ce mot : lien.

Si vous placez le pointeur de la souris sur un tel mot, une fenêtre surgissante – popup – s'ouvre alors que l'affichage du reste du documment s'atténue. Cette fenêtre contient une explication détaillée du mot en question

Une fois que vous avez pris connaissance de ce que vous affiche cette fenêtre surgissante, vous pouvez retourner à l'état normal en cliquant ailleurs dans le document.

Navigation

Pour naviguer, utilisez le menu vertical à gauche du texte. Les entrées de menu marquées d'une petite flèche vers le bas ouvrent un sous-menu lorsqu'on clique dessus.

Vous pouvez également choisir une lecture continue en cliquant sur un des liens proposés en bas de page.

Dimensionnement du canevas et positionnement du graphique

Dimensionnement du canevas

Pour dimensionner le canevas, il faut préciser l'option size dans la commande set terminal. Voici un exemple :

gnuplot> set terminal pngcairo size 1600,1200  
Terminal type set to 'pngcairo'
Options are ' background "#ffffff" enhanced fontscale 1.0 size 1600, 1200 '
gnuplot> 

Sans autre précision le graphique occupe tout l'espace du canevas.

Positionnement et dimensionnement du graphique

Positionnement direct

Pour positionner le résultat de la commande plot dans le canevas, on dispose de deux commandes :

  • set origin <x>,<y> qui positionne le coin inférieur droit du graphique et dans laquelle <x> et <y> sont les coordonnées de ce point d'origine
  • set size <tx>,<ty> dans laquelle <tx> et <ty> représente les dimensions en x et y relativement à la taille du canevas (valeurs entre 0 et 1).

Voici un exemple

gnuplot> set terminal pngcairo size 1600,1200
Terminal type set to 'pngcairo'
Options are ' background "#ffffff" enhanced fontscale 1.0 size 1600, 1200 '
gnuplot> set origin 0.5,0.5                  
gnuplot> set size 0.5,0.5                    
gnuplot> set output "out.png"                
gnuplot> plot x**2   

Le résultat de la série de commandes précédente est le suivant :

Capture-003.jpeg

Ici le graphique est positionné dans le quadrant supérieur droit du canevas.

La courbe x carré, est ici seulement visible sur un échelle allant de -10 à +10 en x et de -2,5 à 4 en y. Nous verrons plus loin comment définir les étendues visibles en x et en y

Positionnement par définition des marges

Un autre moyen, indirect cette fois, pour positionner le graphique dans le canevas consiste à utiliser les marges.

Les marges sont lmargin à gauche (left) , rmargin à droite (right), bmargin en bas (bottom) et tmargin en haut (top). La syntaxe des commandes est la suivante :

  • set lmargin {{at screen} <margin>}
  • set rmargin {{at screen} <margin>}
  • set tmargin {{at screen} <margin>}
  • set bmargin {{at screen} <margin>}
  • set margins <left>, <right>, <bottom>, <top>
  • show margin

Dans ces commandes <margin> est à remplacer par une valeur numérique.

L'unité est la hauteur de la police attachée au canevas (par défaut ou établie lors de la définition du terminal par set term <terminal> font <font>) pour les marges haute et basse et la largeur de police pour les marges gauche et droite.

Lorsque l'option at screen est ajoutée, le valeur qui suit (entre o et 1) est interprétée comme une fraction soit de la largeur, soit de la hauteur du canevas. Par exemple set bmargin at screen 0.5 créera une marge de la demi-hauteur du canevas.

Lors de l'établissement d'une marge, la taille du graphique est modifiée en conséquence.

Ainsi la suite de commandes :

 gnuplot> set bmargin at screen 0.5
 gnuplot> set lmargin at screen 0.5

est strictement équivalente à :

gnuplot> set origin 0.5,0.5
gnuplot> set size 0.5,0.5

Plusieurs graphiques sur le même canevas

C'est par le biais du mode multiplot que nous sommes en mesure de créer plusieurs graphiques dans le même canevas. On l'obtient par la commande set multiplot.

Comme il n'est pas possible de modifier le fichier de sortie dans ce mode, il faut le définir avant. La séquence à respecter est la suivante :

 gnuplot>set terminal pngcairo size 1600,1200
 Terminal type set to 'pngcairo'
 Options are ' background "#ffffff" enhanced fontscale 1.0 size 1600, 1200 '
 gnuplot> set output "out.png"
 gnuplot> set multiplot
 multiplot> set origin 0,0
 multiplot> set size 0.5,1
 multiplot> plot 1/(x**2)
 multiplot> set origin 0.5,0
 multiplot> set size 0.5,1
 multiplot> plot cos(x)/(1+x)
multiplot> unset multiplot
gnuplot> set output
gnuplot> 

Notez bien le changement de l'invite de commande après la commande set multiplot.

La séquence de commandes précédente donne le résultat suivant :

Capture-024.jpeg

Plusieurs tracés sur un même graphique

Pour superposer plusieurs courbes sur un même graphique, il faut séparer les éléments à tracer dans une même commande plot par une virgule.

   gnuplot> set origin 0,0
    gnuplot> set size 1,1
    gnuplot> set output "out.png"      
    gnuplot> plot 1/(x**2),cos(x)/(1+x)
    gnuplot> 

Capture-025.jpeg

On notera que le changement de couleur du tracé est automatique.