Créateur | Thomas Williams et Colin Kelley[1]. |
---|---|
Développé par | Ethan A Merritt(d)![]() |
Première version | ![]() |
Dernière version | 6.0.2 ()[2]![]() |
Dépôt | sf.net/p/gnuplot/gnuplot-main![]() |
Écrit en | C![]() |
Système d'exploitation | Multiplateforme(en)![]() |
Formats lus | Gnuplot plot files(d)![]() |
Formats écrits | Gnuplot plot files(d)![]() |
Type | Application console(en) Logiciel graphique Logiciel de traçage(d) ![]() |
Licence | Licence libre[3] non compatible avec laGPL[4] |
Documentation | www.gnuplot.info/docs_4.6/gnuplot.pdf etwww.gnuplot.info/docs_5.2/Gnuplot_5.2.pdf![]() |
Site web | www.gnuplot.info![]() |
Gnuplot est unlogiciel interactif en ligne de commande 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 etsystèmes d'exploitation (Linux,Windows,OS/2,VMS...) et peut envoyer les graphiques à l'écran ou dans des fichiers dans de nombreux formats.Gnuplot utilise également l'algorithme de Levenberg-Marquardt pour ajuster les paramètres d'une fonction numérique sur des données expérimentales.
Le programme peut être utilisé interactivement, et est accompagné d'uneaide 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.
Gnuplot est utilisé comme moteur de traçage d'Octave et deMaxima.
Le programme est distribué sous une licence delogiciel libre qui permet de copier et de modifier lecode source du programme. Les versions modifiées du programme ne peuvent être distribuées que sous forme de fichiers correctifs. Contrairement à ce que son nom semble indiquer, Gnuplot ne fait pas partie duprojet GNU, et n'a pas de lien particulier avec lui ou la FSF.Il n'utilise pas la licence decopyleftGPL.
Gnuplot fonctionne en interne en faisant abstraction du dispositif final de rendu. Ceci est implémenté via le concept de « terminal », que l'utilisateur peut spécifier par une commande.
Par défaut, et quelle que soit la plateforme, le rendu sera fait via une fenêtre utilisant la bibliothèque de fenêtrage standard du système d'exploitation (excepté surMacOS, où la bibliothèque employée par Gnuplot,Qt, n'est absolument pas la bibliothèque de fenêtrage standard du système d'exploitation) et permettant une utilisation interactive à la souris (orientation de la vue pour les graphes en 3D notamment).
De nombreux terminaux sont disponibles (plus d'une trentaine) parmi lesquelsSVG,PNG,PostScript,PDF,JPEG.La liste complète dépend de la version et des options de compilation utilisée, et peut être obtenue via la commandeset terminal
.On précisera le terminal souhaité via la commande
set terminal <nom-du-terminal>
On pourra préciser la taille du rendu (en pixels) en ajoutant une optionsize
, par exemple:
set terminal pngcairo size 640,480
D'autres options sont possibles, mais dépendent du type de terminal.
En cas de sortie dans un fichier, il faut spécifier pour chaque plot le nom du fichier voulu avec la commandeset output
, par exemple:
set output "nom-fichier.png"
gnuplot> set terminal pngTerminal type set to 'png'Options are ' small color'gnuplot> set output "exemple1.png"gnuplot> plot [t=-4:4] sin(t)
#définition de quelques variablesxmin=-6.xmax=6.ymin=-4.ymax=4.xdec=0.25ydec=0.25pasx=1.0pasy=1.0#initialisation du terminalresetsettermx11unsetautoscalesetxr[xmin:xmax]setyr[ymin:ymax]#optionsunsetborderunsetlabelunsetxticsunsetyticssettitle"fonction tangente"#les axessetarrow3fromxmin,0toxmax,0,3lt-1lw0.5setarrow4from0,yminto0,ymax,3lt-1lw0.5#l'originesetlabel"0"atxdec/2,-ydecsetlabel"x"atxmax-pasx,-ydecsetlabel"y"at-xdec,ymax-pasy/3setlabel"1"atpasx,-ydecsetlabel"1"at-3*xdec/2,pasysetlabel"-1"at-3*xdec/2,-pasysetarrowfrom1,-ydec/2to1,ydec/2noheadlt-1setarrowfrom1.57,-ydec/2to1.57,ydec/2noheadlt-1setlabel"\34/2"at1.57,-ydeccentersetarrowfrom-1.57,-ydec/2to-1.57,ydec/2noheadlt-1setlabel"-\34/2"at-1.57,-ydeccentersetarrowfrom3.1415,-ydec/2to3.1415,ydec/2noheadlt-1setlabel"\34"at3.1415,-ydeccentersetarrowfrom-3.1415,-ydec/2to-3.1415,ydec/2noheadlt-1setlabel"-\34"at-3.1415,-ydeccentersetarrowfrom0,0topasx,pasxlt1setarrowfrom0,0to-pasx,-pasxlt1setarrowfrom-xdec/3,1toxdec/3,1noheadlt-1setarrowfrom-xdec/3,-1toxdec/3,-1noheadlt-1setarrowfrom-1.57,ymaxto-1.57,yminnoheadlt0setarrowfrom1.57,ymaxto1.57,yminnoheadlt0plottan(x)title"tan"wllt3lw2pause-1"maintenant va créer un fichier au format png appuyer sur entrée"settermpngsetout"exemple2.png"repsetoutsettermx11pause-1"touche entrée pour sortir"
Pour exécuter le script :
gnuplot> load 'exemple2.dat'
La commande « multiplot » permet d'insérer plusieurs graphiques dans une feuille.
Sur les autres projets Wikimedia :