Graphic/GnuPlot

De TartareFR
Aller à la navigation Aller à la recherche

<app>Gnuplot</app> est un logiciel qui sert à produire des représentations graphiques en deux ou trois dimensions de fonctions numériques ou de données. Le programme fonctionne sur de nombreux ordinateurs et systèmes d'exploitation (Linux, Windows, OS/2, etc ...) et peut envoyer les graphiques à l'écran ou dans des fichiers dans de nombreux formats.

<app>Gnuplot</app> utilise également l'algorithme de Levenberg-Marquardt pour ajuster les paramètres d'une fonction numériques sur des données expérimentales.

Le programme peut être utilisé intéractivement, et est accompagné d'une aide en ligne. L'utilisateur entre en ligne de commande des instructions qui ont pour effet de produire un tracé. Il est aussi possible d'écrire des scripts gnuplot qui, lorsqu' ils sont exécutés, génèrent un graphique.

Exemple en ligne de commande

$ gnuplot

gnuplot> set terminal png
Terminal type set to 'png'
Options are 'nocrop font /usr/share/fonts/dejavu/DejaVuSans.ttf 12 size 640,480 '
gnuplot> set output "/home/didier/tmp/gnuplot-exemple1.png"
gnuplot> plot [t=-4:4] sin(t)
gnuplot> quit

GnuPlotExample1.png

Exemple de script gnuplot

#définition de quelques variables
	xmin=-6.
	xmax=6.
	ymin=-4.
	ymax=4.

	xdec=0.25
	ydec=0.25
	pasx=1.0
	pasy=1.0

#initialisation du terminal
reset
set term x11
unset autoscale
set xr [xmin:xmax]
set yr [ymin:ymax]

#options
unset border
unset label
unset xtics
unset ytics

set title "fonction tangente"

#les axes
set arrow 3 from  xmin,0 to xmax,0,3 lt -1 lw 0.5
set arrow 4 from  0,ymin to 0,ymax,3 lt -1 lw 0.5

#l'origine
set label "0" at xdec/2, -ydec

set label "x" at xmax - pasx, -ydec
set label "y" at -xdec, ymax - pasy/3

set label "1" at pasx, -ydec
set label "1" at -3*xdec/2, pasy
set label "-1" at -3*xdec/2, -pasy

set arrow from  1, -ydec/2 to  1, ydec/2 nohead lt -1

set arrow from  1.57, -ydec/2 to  1.57, ydec/2 nohead lt -1
set label "\34/2" at 1.57, -ydec center

set arrow from  -1.57, -ydec/2 to  -1.57, ydec/2 nohead lt -1
set label "-\34/2" at -1.57, -ydec center

set arrow from  3.1415, -ydec/2 to  3.1415, ydec/2 nohead lt -1
set label "\34" at 3.1415, -ydec center

set arrow from  -3.1415, -ydec/2 to  -3.1415, ydec/2 nohead lt -1
set label "-\34" at -3.1415, -ydec center

set arrow from  0, 0  to pasx, pasx lt 1 
set arrow from  0, 0 to  -pasx, -pasx lt 1 

set arrow from  -xdec/3, 1 to  xdec/3, 1 nohead lt -1 
set arrow from  -xdec/3, -1 to  xdec/3, -1 nohead lt -1 

set arrow from  -1.57, ymax to  -1.57, ymin nohead lt 0
set arrow from  1.57, ymax to  1.57, ymin nohead lt 0

plot tan(x) title "tan" w l lt 3 lw 2

pause -1 "maintenant va créer un fichier au format png appuyer sur entrée"

set term png
set out "exemple2.png"
rep
set out
set term x11
pause -1 "touche entrée pour sortir"


Pour exécuter le script :

gnuplot> load 'exemple2.dat'

GnuPlotExample2.png

[1]

Références