
Le site officiel de gnuplot est http://www.gnuplot.info/
avec son manuel
en anglais. Un manuel en français
est aussi disponible.
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