Вы находитесь на странице: 1из 11

Recettes dinformatique n 4bis 99-00

Gnuplot

Du bon usage de gnuplot

1.

Utiliser la version 3.6 de gnuplot :


/home3/p02/p02areuh>gnuplot-3.6
gnuplot>
gnuplot>quit (ou exit)
/home3/p02/p02areuh>

2.
2.1

#
#
#
#

dmarrer une session du grapheur (version 3.6)


en rponse
terminer la session gnuplot et revenir au shell
en rponse

Avis
aux curieux :
Une aide en ligne est disponible
depuis le shell : /home3/p02/p02areuh>man gnuplot # pour tout savoir sur gnuplot
depuis gnuplot: gnuplot>help
# id.
depuis gnuplot: gnuplot>?plot
# pour tout savoir sur lordre plot
La troisime solution permet daccder directement la description dune commande ou
dune option dont on connat (ou crot connatre) le nom.

2.2

aux paresseux :
Dans une session gnuplot, on peut excuter une commande unix :
gnuplot>!emacs slurp.f90 # on dite le fichier slurp.f90 comme si on tait dans le shell,
# point nest besoin de fermer la session gnuplot.

2.3

aux trs paresseux :


Ce grapheur autorise toute abrviation correspondant un mot unique de son lexique.
using peut tre remplac par u, with par w, lines par l,
xrange ne peut tre remplac par x car le lexique contient en particulier xlabel (mais xr est
accept et correctement interprt).

3.

Dfinition :
Trac 2D = trac ncessitant des donnes {(xi,yi)}, plus dventuelles incertitudes.
Trac 3D = trac ncessitant des donnes {(xi,yi,zi)}.
(corollaire : un trac de lignes de niveau est un trac 3D)

4.

Fichier de donnes :
Bien noter quun fichier de donnes ne doit pas, en gnral, contenir lensemble des
points calculs. En effet, pour obtenir une prcision donne on est souvent oblig
deffectuer un grand nombre de calculs. Compte-tenu de la rsolution de limprimante,
il serait ridicule (et coteux en espace-mmoire) de les imprimer tous !
Chaque ligne est appele enregistrement . Il sagit dun ensemble de N nombres spars
par une ou plusieurs espaces.
N nest limit que par la mmoire disponible. On peut sans problme utiliser des
enregistrements de quelques dizaines de colonnes, voire normment plus.
Ne pas abuser !
Chaque nombre est crit naturellement :
par exemple -1200.6
ou en utilisant la notation exposant :
par exemple -1.2006e3
Toute ligne du fichier commenant par le caractre # est ignore par gnuplot, cest une
ligne de commentaire.

Licence et Magistre 1ere anne de physique fondamentale

Recettes dinformatique n 4bis 99-00

Gnuplot

Du rle particulier jou par les lignes blanches.


Tout dabord, une prcaution.
F Un fichier ne doit pas commencer par une ligne blanche !
Puis, un peu de vocabulaire.
F Squence denregistrement
Ensemble denregistrements conscutifs., tel que deux squences conscutives ne
soient spares que par une ligne blanche (i.e. par un saut de ligne unique).
F Bloc denregistrement
Ensemble denregistrements (ou de squences) tel que deux dentre eux soient
spars par au moins deux lignes blanches.
Cela permet gnuplot daccder directement un bloc et dignorer le reste du fichier
(voir loption index dans un exemple venir).
Enfin, diffrencier le rle de ces sauts de lignes suivant le type de tracs.
On verra par la suite que deux modes de trac sont possibles : par points ou par lignes.
F Insrer une ou plusieurs lignes blanches naffecte aucunement le trac par points
des enregistrements contenus dans un fichier.
F Leffet produit sur un trac par lignes diffre dans les cas 2D ou 3D :
2D
3D
La squence suivante Permet le trac fil de fer dune surface.
produira une nouvelle Chaque squence denregistrements x (ou y)
courbe.
fix doit se terminer par une ligne blanche.
2 lb
Le
bloc
suivant Le bloc suivant produira une nouvelle surface.
produira une nouvelle
courbe.
Exemple de fichier 2D :
# fichier humph.res (x i, y 1,i y 1,i y 2,i y 2,i)
# (ce qui correspond deux ensembles de donnes avec incertitudes ayant des abscisses
# communes)
# 2 squences denregistrements spares par une double ligne blanche
# 1ere bloc
1 lb

0.0000000E+00
1.000000
2.000000
3.000000
4.000000
5.000000

0.0000000E+00
0.9852516
4.185222
8.851819
16.47338
24.61261

0.1000000E+00
5.0000001E-02
0.2000000
0.4500000
0.8000000
1.250000

0.0000000E+00
1.033661
4.275208
9.763114
17.08233
26.89037

# 2eme bloc
6.000000
7.000000
8.000000
9.000000
10.00000
11.00000

34.52370
49.98479
62.72112
84.30634
95.40314
121.7117

1.800000
2.450000
3.200000
4.050000
5.000000
6.050000

38.84992
51.32557
58.36615
74.61319
91.87270
131.5402

0.1000000E+00
0.1000000
0.2000000
0.3000000
0.4000000
0.5000000
# ligne blanche
# ligne blanche
0.6000000
0.7000000
0.8000000
0.9000000
1.000000
1.100000

Exemple de fichier 3D :
# fichier splash.res
# des rsultats donns dans lordre : xi, yi, z1,i, z2,i
# (ce qui correspond deux nuages de points ou deux surfaces)
# un maillage de la portion rectangulaire [ 2 , 2 ] [ 2 , 2 ] du plan (x,y) est utilis
# chaque squence correspond aux valeurs de z, pour x fix et pour lensemble des
valeurs possibles de y.
# Une ligne blanche spare une squence de la suivante
-9.42
-9.42
-9.42
0.00
-9.42
-9.05 -12.76
31.39
-9.42
-8.67 -15.36
55.94
-9.42
-8.29 -16.93
70.73
-9.42
-7.92 -17.33
74.47
.............................
.............................
.............................

Licence et Magistre 1ere anne de physique fondamentale

Recettes dinformatique n 4bis 99-00


-9.42
-9.42
-9.42
-9.42
-9.42

7.54
7.92
8.29
8.67
9.05

-16.60
-17.33
-16.93
-15.36
-12.76

Gnuplot

67.58
74.47
70.73
55.94
31.39
# ligne blanche

-9.05
-9.42 -12.52
31.39
-9.05
-9.05 -15.24
56.04
-9.05
-8.67 -16.89
70.99
-9.05
-8.29 -17.33
74.89
-9.05
-7.92 -16.58
68.12
.............................
.............................
.............................
-9.05
7.54 -16.57
68.08
-9.05
7.92 -16.21
64.81
-9.05
8.29 -14.73
51.37
-9.05
8.67 -12.24
28.88
-9.05
9.05
-9.05
0.00
# ligne blanche
.............................
.............................
.............................
# ligne blanche
.............................
.............................
.............................

5.

Commande de trac pour un fichier de donnes

5.1

Les deux tracs de base :


gnuplot>plot humph.res #
#
#
#
#
#
#
#

la dclaration minimale pour un trac 2D :


lordre (plot) et le nom du fichier concern (humph.res).
Les options sont prises par dfaut, notamment :
trac par points de la 2eme colonne en fonction de la 1ere,
portes choisies en fonction des valeurs extrmes,
tous enregistrements pris en compte,
symbole plac en chaque point,
de taille fixe.

gnuplot>splot splash.res #
#
#
#
#
#
#
#

la dclaration minimale pour un trac 3D :


lordre (splot) et le nom du fichier concern (splash.res),
Les options sont prises par dfaut, notamment :
trac par points de la 3eme colonne en fonction des 2 1ere,
portes choisies en fonction des valeurs extrmes,
tous enregistrements pris en compte,
symbole plac en chaque point,
de taille fixe.

140
humph.res
jp3d.dat
120

100
20
15
10
5
0
-5
-10
-15
-20

80

60

40
-10
20

-8

-6

-4

-2

10

-8
-10

-6

-4

-2

10

0
0

10

12

Licence et Magistre 1ere anne de physique fondamentale

Recettes dinformatique n 4bis 99-00

5.2

Gnuplot

Des options de trac sont possibles, voire, en pratique, ncessaires.

Exemples :
gnuplot>plot [0:5] [0:30] humph.res index 0 using 1:4
# trois options utilises :
# [0:5] : porte des abscisses, [0:30] : porte des ordonnes,
# index 0 : trac des seuls points de la 1e squence,
# (dsol, la 1ere porte le n 0)
# using 1:4 : trac de la colonne 4 en fonction de la 1.
gnuplot>splot splash.res using 1:2:4
# les trois options prcdentes sont encore possibles.
# on impose simplement le trac des points correspondants aux colonnes 1,2,4.
30
humph.res index 0 u 1:4
jp3d.dat u 1:2:4
25

80
60
40
20
0
-20
-40
-60
-80

20

15

10

-10

-8

-6

-4

-2

10

-8
-10

-6

-4

-2

10

0
0

6.

Attributs graphiques

6.1

Cela concerne
la prsentation gnrale

les tracs

6.2

La prsentation gnrale
F A peu prs tout est prvu par dfaut. Pour changer un aspect particulier ou en introduire
un nouveau, on doit excuter une commande du type :
gnuplot>set machin paramtres_ventuels
Tous les graphes excuts par la suite au cours de la mme session gnuplot seront pars du
nouvel attribut.
Si on souhaite en annuler leffet ou supprimer lattribut par dfaut, il faut taper :
gnuplot>set nomachin
F Quelques exemples utiles.
gnuplot>set title joli graphe # place le titre entre apostrophes au-dessus du graphe
gnuplot>set xlabel vla x
# place le label entre apostrophes (vla x) contre laxe des x
gnuplot>set ylabel vla y
# place le label entre apostrophes (vla y) contre laxe des y
gnuplot>set zlabel epi z
# place le label entre apostrophes (epi z) contre laxe des z
gnuplot>set key 11.3,7.8
# pour faire figurer la lgende la position 11.3,7.8
# (une 3eme coordonne est possible pour un trac 3D)
gnuplot>set xrange [-1.5:7] # impose les valeurs extrmes de labscisse
gnuplot>set yrange [-pi:pi] # id. pour lordonne
gnuplot>set zrange [0:5.]
# id. pour la cte
gnuplot>set hidden3d
# masque les faces caches dun dessin 3D fil de fer
F En pratique :
commencer par un trac avec les attributs par dfaut,
oprer ventuellement des transformations du fichier de donnes,
introduire avec modration les nouveaux attributs,
en parer le trac final grce lorde : gnuplot>replot
F Retour la case dpart :
On peut revenir aux options par dfaut grce la commande : gnuplot>reset.

Licence et Magistre 1ere anne de physique fondamentale

Recettes dinformatique n 4bis 99-00


6.3

Gnuplot

Les tracs
Tout est prvu par dfaut. On peut malgr tout souhaiter jouer modrment sur le
style des diffrents composants dun graphe.
F On a la possibilit, comme pour la prsentation gnrale, dintroduire des ordres du type
set truc. Consulter ce sujet laide en ligne.
F On peut prciser, dans chaque commande de trac, un style gnral. Voici les plus
courants :
gnuplot>plot humph.res with points # en fait, style par dfaut
gnuplot>plot humph.res with lines # chaque point reli au suivant par un segment
gnuplot>plot humph.res u 1:4:5 with errorbars
# colonne 4 fonction de colonne 1
# barre dincertitude (1/2 long. en colonne 5)

140

140
humph.res

humph.res u 1:4:5
120

120

100
100
80
80
60
60
40
40
20

20

-20
0

10

12

10

12

gnuplot>splot splash.res with points # style par dfaut


gnuplot>splot splash.res with lines # surface fil de fer
jp3d.dat

20
15
10
5
0
-5
-10
-15
-20

-10

-8

-6

-4

-2

10

-8
-10

-6

-4

-2

10

F Pour chaque style, un ou deux attributs peuvent tre choisis :


Le symbole associ chaque point peut tre choisi parmi 6 motifs (attribut pt).
On peut transformer sa taille standard e0 partir dun coefficient a : e0 a e0.
(attribut ps)
8 types de lignes sont envisageables (attribut lt).
( chacun est associe une couleur lcran, un pointill particulier limpression)
Lpaisseur e1 par dfaut du trait peut tre modifie grce un coefficient b : e0 b e1.
(attribut lw)
Exemples :
gnuplot>plot humph.res w p pt 2 ps 3.5 # trac par points de type 2 et dpaisseur 3.5 e0
gnuplot>plot humph.res w l lw 5.
# trac par lignes dpaisseur 5. e1

Licence et Magistre 1ere anne de physique fondamentale

Recettes dinformatique n 4bis 99-00

Gnuplot

140

140
humph.res

humph.res

120

120

100

100

80

80

60

60

40

40

20

20

0
0

7.

10

12

10

12

Fichier de commandes
Lintroduction de styles et de leurs attributs peut augmenter considrablement le nombre de
commandes. Les introduire chaque session provoque chez certains une saine allergie.
Il existe un remde !
laide de votre diteur prfr, crez un fichier, par exemple splash.com dans lequel vous
introduirez la squence une par ligne de commandes gnuplot correspondant au trac
embelli de la surface correspondant au fichier splash.res.
Quittez lditeur
Activez gnuplot puis lancez lexcution des commandes contenues dans splash.res :
gnuplot>load splash.com

8.

Transformation des donnes

Il sagit de tracer, partir dun fichier de donnes ( x i , y i ) , g(yi) en fonction de f(xi).


gnuplot>f(x)=x2
# on dfinit f
gnuplot>g(y)=log(y)
# on dfinit g
gnuplot>plot humph.res u (f($1)):(g($4)) # on trace, g(col.4) en fonction de f(col.1)
# $ est obligatoire, les parenthses aussi
Mais on peut condenser en une commande :
gnuplot>plot humph.res u ($12):(log($4)) # sobre, de bon got
5
humph.res u ($1**2):(log($4))
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0

9.

20

40

60

80

100

120

140

Trac de fonctions

9.1 Reprsentation cartsienne


gnuplot>f(x)=12(2-2cos(x)-xsin(x))/x4 # on dfinit une fonction dune variable
gnuplot>plot [0:5] f(x)
# on en trace le graphe sur [0,5]
gnuplot>h(x,y)=sin(x)sin(y)
gnuplot>splot [0:1] [-10:10] h(x,y)

Licence et Magistre 1ere anne de physique fondamentale

# on dfinit une fonction de deux variables


# on trace la surface z=h(x,y)
# (sur [0,1][-10,10])

Recettes dinformatique n 4bis 99-00

Gnuplot

1
12*(2-2*cos(x)-x*sin(x))/x**4
sin(x)*sin(y)
0.9

0.8
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1

0.7

0.6

0.5

0.4

10
5

0.3
0
0.2

0.2

0
0.4

0.6

-5
0.8

-10

0.1
0

Remarque.
Chacune de ces paires de commandes peut tre ramene une seule.
Exemple : gnuplot>splot [0:1] [-10:10] sin(x)sin(y)

9.2 Reprsentation paramtrique


gnuplot>set parametric
gnuplot>plot [0:5] t,1/t

# on entre dans le mode parametric


# on trace le graphe sur [0,5] de x(t)=t,y(t)=1/t
# t est le nom impos du paramtre

gnuplot> set parametric # on entre dans le mode parametric


gnuplot>splot sin(u)cos(v),sin(u)sin(v),sin(u)2
# on trace le graphe du parabolode :
# x=sin(u)cos(v),y=sin(u)sin(v),z=sin(u)2
# u et v sont les noms imposs des paramtres
20
t, 1/t
sin(u)*cos(v), sin(u)*sin(v), sin(u)**2

18
16
14

1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0

12
10
8
6
4

-1

-0.8 -0.6
-0.4 -0.2

0.2 0.4
0.6 0.8

-1

0
-0.2
-0.4
-0.6
-0.8

1
0.8
0.6
0.4
0.2

0
0

0.5

1.5

2.5

3.5

4.5

Remarques.
Des portes peuvent tre imposes, mais elles concernent cette fois le(s) paramtre(s).
Tout trac ultrieur dune fonction en reprsentation cartsienne doit tre prcd par une
sortie du mode parametric (set noparametric).

9.3 Reprsentation polaire


gnuplot>set polar
# on entre dans le mode polar
gnuplot>plot [0:10pi] 1/t # on trace le graphe sur [0,10] de r(t)=1/t
# t est le nom impos du paramtre

Licence et Magistre 1ere anne de physique fondamentale

Recettes dinformatique n 4bis 99-00

Gnuplot

1
1/t

0.8

0.6

0.4

0.2

0.2

0.4
0.5

0.5

1.5

2.5

Remarques
Des portes peuvent tre imposes, elles concernent langle t, x et y.
Tout trac ultrieur dune fonction en reprsentation cartsienne doit tre prcd par une
sortie du mode polar (set nopolar)

9.4 Remarques gnrales


F Les fonctions peuvent dpendre de constantes. Simplement, elles doivent tre prcises
avant (ou ) la commande de trac. Est autoris : gnuplot>plot ax2 , a=.45
F Par dfaut, une courbe est trace avec 100 points, une surface avec un treillis de 1010
isolignes (i.e. lignes de x ou de y donn)de 100 points. Dans lun et lautre cas, les points
sont lis 2 2 par des segments. (pour modifier, voir set samples)

10

Superposition de plusieurs tracs


Lorsquon souhaite superposer sur une mme fentre plusieurs courbes, on peut utiliser une
des trois mthodes ci-dessous.
F 1ere mthode
On peut utiliser un fichier de donnes comprenant plusieurs squences denregistrements
spares dune ligne blanche.
gnuplot>plot humph.res w l
chaque squence est associe un trac.
F 2eme mthode
En une seule commande, on peut superposer les tracs correspondants plusieurs fichiers et
des fonctions :
gnuplot>splot splash.res u 1:2:($3-100) w l\ # \ signale que la commande se poursuit
, splash.res u 1:2:4 w l\
# la ligne suivante
,-300+100*besj0(1/x/y)
# 0r donc, 1 commande sur 3 lignes !
eme
F 3 mthode
On use de la commande multiplot :
gnuplot>set multiplot
# ouvre la session de tracs multiples
multiplot>splot splash.res u 1:2:($3-100) w l # 1 fentre, 1 trac
multiplot>splot splash.res u 1:2:4 w l
# 1 fentre, 2 tracs
multiplot>splot -300+100*besj0(1/x/y)
# 1 fentre, 3 tracs
multiplot>splot
# 1 fentre, tracs
multiplot>
#
multiplot>set nomultiplot
# pour que les tracs suivants soient simples
gnuplot>

Licence et Magistre 1ere anne de physique fondamentale

Recettes dinformatique n 4bis 99-00

Gnuplot

jp3d.dat u 1:2:($3-100)
jp3d.dat u 1:2:4
-300+100*besj0(1/x/y)

100
50
0
-50
-100
-150
-200
-250
-300
-350

-10

11

-8

-6

-4

-2

10

-8
-10

-6

-4

-2

10

Trac de lignes de niveau


gnuplot>set contour

#
#
gnuplot>set cntrparam levels 15 #
gnuplot>set nosurface
#
gnuplot>set view 0.,0.
#
gnuplot>splot splash.res w l #

12

pour faire apparatre des lignes de niveau


dans le plan (x,y) (par dfaut, il y en a 5)
impose 15 l. de n. (quirparties entre zmin et zmax)
la surface disparat : il ne reste que les l. de n.
donne une orientation habituelle aux axes
la rcompense !

Raliser un fit de donnes


gnuplot>f(x)=ax2+bx+c # dfinition de la fonction fit
gnuplot>fit f(x) humph.res u 1:4:5 via a,b,c
# fit des donnes {xi (en colonne n 1),
# yi (en colonne n 2) affecte de lincertitude yi
# (en colonne n 3)} par la fonction f(x).
# La dclaration des paramtres (via a,b,c) est obligatoire.
140

10
8

15
10
5
0
-5
-10
-15

humph.res u 1:2:3
a*x**2+b*x+c
120

100

6
4

80

2
0

60

-2
-4

40

-6
-8
-10

-8

-6

-4

-2

10

20

-10
0

-20
0

10

12

Remarques :
FLorsquon ne se rfre qu deux colonnes (ex. u 1:4) on ralise un fit non pondr.
FOn peut concatner les lignes de commande en une seule :
gnuplot>fit ax2+bx+c humph.res u 1:4:5 via a,b,c
FLe fit peut tre non linaire (par ex. (a+bx2)exp(cx2))
FOn peut tracer les donnes et le fit obtenu en une seule commande :
gnuplot>plot ax2+bx+c, humph.res u 1:4:5 w errorbars

13

Mettre de lanimation
Supposons quune grandeur y soit fonction de deux autres x et a. Il est souvent intressant
de reprsenter, pour a fix, les variations de y en fonction de x mais aussi de suivre
lvolution du graphe associ lorsque a varie. Par exemple on peut souhaiter suivre

Licence et Magistre 1ere anne de physique fondamentale

Recettes dinformatique n 4bis 99-00

Gnuplot

lvolution au cours du temps ( a t ) de la rpartition spatiale dun paquet donde


unidimensionnel ( x x, y ).
1ere cas
On dispose dun fichier schmol.dat contenant des enregistrements de 11 colonnes. La
premire colonne reprsente lensemble des valeurs de x, les 10 autres, les valeurs
correspondantes de y pour 10 valeurs du paramtre a. On a cr un fichier de commande,
disons schmol.com, capable dafficher le graphe de la colonne i en fonction de la colonne 1
lorsque i varie entre 2 et 11.
gnuplot>set yrange [0.:20.] # obligatoire. On doit imposer une porte commune.
gnuplot>i=2
# pour que le premier trac soit col. 2 en fonction de col. 1
gnuplot>imax=11
# pour que le dernier trac soit col. 11 en fonction de col. 1
gnuplot>load schmol.com # pour lancer lexcution des commandes gnuplot contenues
# dans le fichier schmol.com
contenu du fichier de commande :
#schmol.com
# une ligne de commentaires
plot schmol.dat u 1:i w l
# noter que le numro de la 2eme colonne est i
i=i+1
# incrmente le n de colonne
if (i<=imax) reread
# si i11, relance lexcution des commandes de ce fichier
# depuis la 1ere
eme
2 cas
Si lensemble des valeurs de x change chaque graphe, on ne peut plus utiliser la mthode
prcdente. Le plus simple consiste crer un fichier, disons dugudu.dat, contenant 10 blocs
denregistrements (spars par une double ligne blanche). chaque bloc devra tre associe
une courbe.
squence gnuplot
gnuplot>set xrange [0.:5.]
gnuplot>set yrange [0.:20.]
gnuplot>i=0
# pour que le premier trac corresponde au 1er index (0)
gnuplot>imax=10
# pour que le dernier trac corresponde au dernier index (10)
gnuplot>load dugudu.com # pour lancer lexcution des commandes gnuplot contenues
# dans le fichier dugudu.com
fichier de commande
#dugudu.com
# une ligne de commentaires
plot dugudu.dat index i w l # lindex i dsigne le bloc i (le 1er tant numrote 0)
i=i+1
# incrmente lindex
if (i<=imax) reread
# si i10, relance lexcution des commandes de ce fichier
# depuis la 1ere

14

Quelques plus

14.1 Afficher heure et date


gnuplot>set time

# affiche heure et date


# dans le coin infrieur gauche de la fentre graphique

14.2 Dfendre les petits nombres ?


Dans gnuplot, par dfaut, les nombres compris entre -1.e-8 et +1.e-8 sont pris gaux zro.
Si un fichier de donnes ne contient que des abscisses (et/ou des ordonnes, et/ou des ctes)
comprises dans cet intervalle, elles seront traites comme tant toutes nulles. La mise
lchelle automatique ne peut plus fonctionner et la porte de laxe correspondant sera celle
par dfaut !
F Un remde est souvent envisageable :
Ayant correctement formul le problme traiter, seules des variables sans dimension
interviennent (!) dont la grandeur caractristique est bien souvent de lordre de lunit
F Vous tenez absolument pactiser avec des nombres trs petits, vous appliquez la potion
magique :
gnuplot>set zero 1.e-15
# dans cet exemple, seuls les nombres de valeur absolue <
# 1e-15 sont pris gaux 0

14.3 Obtenir des chelles (semi) logarithmiques


gnuplot>set logscale yz e

# pour obtenir des chelles logarithmiques en base e sur


# laxe des y et celui des z dans le cas 3D

Licence et Magistre 1ere anne de physique fondamentale

10

Recettes dinformatique n 4bis 99-00

Gnuplot

Remarques :
F yz peut tre remplac par toute combinaison de x, y et z, e par tout nombre (positif).
Cest, bien sur et en premier lieu, utilisable pour un trac 2D.
F Attention, on ne peut user dune chelle logarithmique sur un axe, disons des x, qu la
condition que les extrmits de la porte soient strictement positifs (logarithme oblige !)

14.4 Des segments et des flches


Il peut tre utile de faire figurer sur un trac des flches et/ou des segments de droite. Un
ordre permet de le raliser qui utilise les coordonnes du trac. Curieusement, la ligne on
devrait plutt dire le segment nest prvue quen terme de cas particulier de la flche.
gnuplot>plot [-0.1:0.1] smurf.res u 2:1 w l
# un trac sans histoire
gnuplot>set arrow 12 from .1,1.12 to -0.034,1. nohead # on veut ajouter une ligne
gnuplot>replot
# trac + ligne
gnuplot>set arrow 25 from 0.05,1. to 0.05,1.
# on veut introduire une flche
gnuplot>replot
# trac + ligne + flche
gnuplot>plot [0:100.] gloups.don
# nouveau trac + ligne + flche
gnuplot>set noarrow 12
# pour supprimer la ligne 12
gnuplot>replot
# nouveau trac + flche
Dans cet exemple, la 2 eme commande prpare lajout aux tracs qui vont suivre, dun
segment (car option nohead) joignant les points de coordonnes (0.1,1.12) et (-0.034,1.).
(Pour gnuplot cette flche porte le numro (optionnel !) 12.
La septime commande permet de supprimer dans les tracs ultrieurs la ligne n12.

14.5 Vive la pause


Il peut tre intressant de contrler, lors dune squence de tracs, le temps daffichage de
chaque image. Reprenons lexemple donn en 13 en modifiant lgrement le contenu du
fichier de commande :
#schmol.com
plot schmol.dat u 1:i w l
pause -1
# le trac suivant napparat quaprs un return
# si -1 est remplac par 5, chaque trac reste affich 5 secondes
i=i+1
if (i<=imax) reread

14.6 Imposer les dimensions de la fentre daffichage


gnuplot>set size 1.5,0.5
gnuplot>set size .721,1.

# Donne une surface dimpression de cts L = 1,5 L


# (pour les abscisses), l = 0,5 l (pour les ordonnes),
# o L et l sont les dim. par dfaut de la zone dimpression.
# Donne une surface dimpression carre
# (ce nest quapproximatif lcran !)
# Par ex., permet dobtenir des axes orthonorms
# (en cas de porte identique pour les x et les y)

1 5 Faire bonne impression


gnuplot est capable de gnrer un fichier postscript, langage que comprend limprimante du
service denseignement. Do :
gnuplot>set term postscript
# demande gnuplot de passer en mode postscript ,
# plus rien ne saffiche lcran qui ne connat pas ce
# langage !
gnuplot>set output smurf.ps
# pour envoyer la description postscript du trac venir
# vers le fichier smurf.ps
gnuplot>plot smurf.dat
# justement, on lance le trac li au fichier smurf.dat
gnuplot>set term x11
# exige de gnuplot de revenir au mode console X
# toute nouvelle commande de trac se matrialisera de
# nouveau lcran
gnuplot>!lpr -P impmag smurf.ps # pour immortaliser votre uvre sur velin

Licence et Magistre 1ere anne de physique fondamentale

11

Вам также может понравиться