Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Dernière révision Les deux révisions suivantes
gnuplot [Le 18/03/2015, 08:50]
G-Tux [Avec un fichier de configuration]
gnuplot [Le 21/12/2021, 00:19]
wiki-corrector-bot passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>Hardy calcul_numérique}}+ 
 +{{tag>​calcul_numérique ​education}}
  
 ---- ----
Ligne 28: Ligne 29:
 [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt://​gnuplot|gnuplot]]**. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt://​gnuplot|gnuplot]]**.
  
 +[[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt://​gnuplot-x11|gnuplot-x11]]** pour la console vers l'​écran graphique normal.
 ==== À partir des sources ==== ==== À partir des sources ====
  
 Indispensable pour pouvoir profiter des options de [[gnuplot#​Completion Bash et Historique|complétion et d'​historique]]. C'est pour cette raison que cette doc a été écrite.  ​ Indispensable pour pouvoir profiter des options de [[gnuplot#​Completion Bash et Historique|complétion et d'​historique]]. C'est pour cette raison que cette doc a été écrite.  ​
  
-Les sources de la dernière version de gnuplot sont disponibles sur [[http://​sourceforge.net/​projects/​gnuplot/​files/​|sourceforge]]. Cette dernière version, numérotée 4.4, apporte plusieurs nouveautés dont l'​intégration d'un terminal lua/tikZ (export vers code LaTeX/tikZ destiné à être compilé via pdfLaTeX pour produire un fichier pdf) et la gestion de la transparence. Ne pas hésiter à jeter un coup d'œil à la documentation et FAQ disponibles (en anglais) sur le [[http://​www.gnuplot.info/​|site officiel]]+Les sources de la dernière version de gnuplot sont disponibles sur [[https://​sourceforge.net/​projects/​gnuplot/​files/​|sourceforge]]. Cette dernière version, numérotée 4.4, apporte plusieurs nouveautés dont l'​intégration d'un terminal lua/tikZ (export vers code LaTeX/tikZ destiné à être compilé via pdfLaTeX pour produire un fichier pdf) et la gestion de la transparence. Ne pas hésiter à jeter un coup d'œil à la documentation et FAQ disponibles (en anglais) sur le [[http://​www.gnuplot.info/​|site officiel]]
  
 Après avoir téléchargé les sources, se référer au fichier INSTALL contenu dans l'​archive. Afin de bénéficier du terminal tikZ (paquet liblua5.1-0-dev nécessaire) il est important d'​ajouter un lien symbolique par la commande suivante : Après avoir téléchargé les sources, se référer au fichier INSTALL contenu dans l'​archive. Afin de bénéficier du terminal tikZ (paquet liblua5.1-0-dev nécessaire) il est important d'​ajouter un lien symbolique par la commande suivante :
Ligne 157: Ligne 158:
 Puis : Puis :
 <​code>​ <​code>​
 +gnuplot> reset
 gnuplot> set terminal png gnuplot> set terminal png
 gnuplot> set output "​exemple_1.png"​ gnuplot> set output "​exemple_1.png"​
Ligne 167: Ligne 169:
 \\  \\ 
  
-^ Code         ​^ Fonction mathématique ​   ^-^ Code         ​^ Fonction mathématique ​   ^+^ Code ^ Fonction mathématique ^-^ Code ^ Fonction mathématique ^
 | abs (x)| valeur absolue d’un nombre réel|-| abs (z)| module d’un nombre complexe| | abs (x)| valeur absolue d’un nombre réel|-| abs (z)| module d’un nombre complexe|
 | acos (x) | arc cosinus|-| acosh (x)| arc cosinus hyperbolique| | acos (x) | arc cosinus|-| acosh (x)| arc cosinus hyperbolique|
Ligne 185: Ligne 187:
 | log (x)| logarithme népérien|-| log10 (x)| logarithme décimal| | log (x)| logarithme népérien|-| log10 (x)| logarithme décimal|
 | norm (x)| fonction de répartition de la loi normale N (0; 1)|-| pi|nombre π (3,14...)| | norm (x)| fonction de répartition de la loi normale N (0; 1)|-| pi|nombre π (3,14...)|
-|rand (x)| nombre au hasard|-| real (z)| partie réelle d’un nombre complexe|+| rand (x)| nombre au hasard|-| real (z)| partie réelle d’un nombre complexe|
 | sgn (x)| fonction signe|-|sin (x)| sinus| | sgn (x)| fonction signe|-|sin (x)| sinus|
 | sinh (x)| sinus hyperbolique|-| sqrt (x)| racine carrée| | sinh (x)| sinus hyperbolique|-| sqrt (x)| racine carrée|
 | tan (x)| tangente|-| tanh (x)| tangente hyperbolique| ​ | tan (x)| tangente|-| tanh (x)| tangente hyperbolique| ​
 +
 +
 +^ Code ^ Convention ^
 +| x, y| Coordonnées cartésiennes,​ pour de la 2D|
 +| x, y, z| Coordonnées cartésiennes,​ pour de la 3D|
 +| r| Coordonnées polaires, pour le rayon vecteur|
 +| t| Coordonnées polaires, pour l'​angle vecteur (compris entre [0:2*pi])|
 +|u| Coordonnées paramétriques,​ pour une courbe|
 +|u, v| Coordonnées paramétriques,​ pour une surface|
 +
 ==== Avec un fichier de configuration ==== ==== Avec un fichier de configuration ====
  
Ligne 204: Ligne 216:
  
 Ce fichier pourrait par exemple contenir : Ce fichier pourrait par exemple contenir :
- 
 <​code>​ <​code>​
 set terminal jpeg set terminal jpeg
-set output "Gnuplot1.jpg"+set output "Gnuplot5.jpg"
 set title ' Flux en fonction du temps: ' set title ' Flux en fonction du temps: '
 set xlabel ' Temps (jj/​mm)'​ set xlabel ' Temps (jj/​mm)'​
Ligne 214: Ligne 225:
 set timefmt "​%Y-%m-%d"​ set timefmt "​%Y-%m-%d"​
 set xtics format "​%d-%m"​ set xtics format "​%d-%m"​
 +set style fill transparent solid 0.5 noborder
 plot "​flux.dat"​ using 1:2 with lines,\ plot "​flux.dat"​ using 1:2 with lines,\
-     "​flux.dat"​ using 1:3 with lines+     "​flux.dat"​ using 1:3 with boxes lc rgb"​green"​
 </​code>​ </​code>​
-Fichier "​flux.dat" ​(l'​extension n'a pas d'​importance) : +Créer le fichier de données ​(l'​extension n'a pas d'​importance) : 
-<​file>​+<​file ​gnuplot flux.dat>
 2014-11-10 151 105 2014-11-10 151 105
 2014-11-11 140 91 2014-11-11 140 91
Ligne 230: Ligne 242:
 2014-12-10 130 89 2014-12-10 130 89
 2014-12-12 147 8</​file>​ 2014-12-12 147 8</​file>​
-{{ gnuplot:gnuplot1.jpg?​direct&​300 |}}+{{ gnuplot:gnuplot5.jpg?​direct&​300 |}}
  
-===Autre exemple ​pour un graphique en 3D===  +===Exemple ​pour la fonction paramétrique=== 
-<note tip+<file gnuplot gnuplot2.gnu
-Pour les graphiques en **2D**, la commande est : "**plot** xxxxxxxxx", +reset 
-mais pour les graphiques en **3**Dil faut utiliser : "​**splot** xxxxxxxxx"​. +set terminal png 
-</note+set parametric 
-Créer le fichier, avec la fonction ​+set output ​"essai3.png
-<file+set grid xtics ytics 
-set terminal jpeg +set samples 300 
-set output ​"Gnuplot1.jpg+plot sin(4*t)cos(6*t)</file
-splot [-4*pi:3*pi] cos (x), sin (x)+puis 
 +<code
 +gnuplot 
 +gnuplot> load "gnuplot2.gnu
 +</​code>​ 
 +Résultat ​: 
 +{{ ::​gnuplot:​essai4.png?​direct&​300 |}} 
 +\\  
 + 
 +===Autre exemple de graphique ​(avec double axe X et Y)===  
 + 
 +Créer les fichiers : 
 +<file gnuplot LR.dat>​ 
 +# mois température moyenne ​(°CEnsoleillement(H) - sources données : http://​www.infoclimat.fr 
 +Jan 5,9 84 
 +Fév 6,9 111 
 +Mar 8,7 174 
 +Avr 11,1 212 
 +Mai 14,3 239 
 +Jun 17,5 272 
 +Jui 19,8 305 
 +Aou 19,6 277 
 +Sep 17,8 218 
 +Oct 14,2 167 
 +Nov 9,4 107 
 +Déc 6,6 85
 </​file>​ </​file>​
-Sauvegardez ​le fichier, puis +<file gnuplot gnuplot3.gnu>​ 
 +reset 
 +set terminal png 
 +set output "La Rochelle.png"​ 
 +set title textcolor rgb "​blue"​ "​Données météorologiques de La Rochelle de 1961 à 1990\n(données issues de http://​www.infoclimat.fr)"​ 
 +set key outside below; set key title "​Légende";​ set key box reverse; set key box lw 2 lc 4 # Légende 
 +set grid # Grille de fond 
 +set label 1 textcolor rgb "​orange"​ "305 heures"​ at 2,20 centre; set arrow 1 from 3.5,20 to 6,19.2 # Info 
 +set xtics textcolor rgb "​green"​ border ("​Jan"​ 0, "​Fév"​ 1, "​Mar"​ 2, "​Avr"​ 3, "​Mai"​ 4,"​Jun"​ 5,"​Jui"​ 6, "​Aou"​ 7,"​Sep"​ 8,"​Oct"​ 9,"​Nov"​ 10,"​Déc"​ 11) # Mois sur axe des x 
 +set x2range [-1:12]; set x2tics textcolor rgb "​green"​ border ("​1"​ 0, "​2"​ 1, "​3"​ 2, "​4"​ 3, "​5"​ 4,"​6"​ 5,"​7"​ 6, "​8"​ 7,"​9"​ 8,"​10"​ 9,"​11"​ 10,"​12"​ 11) # Chiffres sur axe des x2 
 +set ytics textcolor rgb "​red";​ set ylabel textcolor rgb "​red"​ "T. moyennes"​ # Colorisation 
 +set y2label textcolor rgb "​orange"​ "E. moyen";​ set y2tics textcolor rgb "​orange";​ set y2range [70:350]# Colorisation + échelle axe y2 
 +set style fill transparent solid 0.3# Colorisation 
 +plot [-1:12] [4:22] "​LR.dat"​ using 3 axes x1y2 title "​Ensoleillement (h/​mois)"​ with boxes lc rgb "​yellow",​\ 
 +"​LR.dat"​ using 2 title "​Températures (°C)" with linespoints lc rgb "​red"​ 
 +</​file>​ 
 +Sauvegardez ​les fichiers, puis 
 <​code>​ <​code>​
 gnuplot gnuplot
-gnuplot> load "GP.gnu"+gnuplot> load "gnuplot3.gnu"
 </​code>​ </​code>​
 Voici le résultat : Voici le résultat :
-{{ gnuplot:gnuplot2.jpg?​direct&​300 |}}+{{ gnuplot:la_rochelle.png?​direct&​300 |}}
  
-Autre exemple :+===Autre exemple ​pour un graphique 3D colorisé=== 
 +<note tip> 
 +Pour les graphiques en **2D**, la commande est "​**plot** xxxx xxxxx",​\\  
 +mais pour les graphiques en **3D**, il faut utiliser : "​**splot** xxxx xxxxx"​\\  
 +et pour imprimer plusieurs graphiques sur une même page, renseigner : "​**multiplot** xxxx xxxxx"​. 
 +</​note>​ 
 +\\ 
 Fichier avec données : Fichier avec données :
-<​file>​+<​file ​gnuplot mon_fichier.gnu> 
 +reset
 set terminal png set terminal png
 set output "​essai1.png" ​ # Nom du fichier de sortie set output "​essai1.png" ​ # Nom du fichier de sortie
Ligne 270: Ligne 330:
 <​code>​ <​code>​
 gnuplot gnuplot
-gnuplot> load "GP.gnu"+gnuplot> load "mon_fichier.gnu"
 </​code>​ </​code>​
-Voici le résultat ​:+Voilà ​:
 {{ gnuplot:​essai3.png?​direct&​300 |}} {{ gnuplot:​essai3.png?​direct&​300 |}}
 \\  \\ 
Ligne 503: Ligne 563:
    * C'est gagné. Normalement,​ aucun des gestionnaires de mise à jour n'​accepte de mettre Gnuplot à jour. ;-)    * C'est gagné. Normalement,​ aucun des gestionnaires de mise à jour n'​accepte de mettre Gnuplot à jour. ;-)
  
 +=====Quelques exemples (différentes possibilités)=====
 +<file gnuplot essai5.gnu>​
 +reset
 +set terminal jpeg
 +set output "​essai5.jpg"​
 +set key off
 +set xrang [0:​10] ​
 +set yrang [0:10]
 +set style line 12 lt rgb "​blue"​
 +set style fill solid 0.6
 +set object 1 rectangle at 1,1 size 8,2 fc rgb "​yellow"​
 +set object 2 circle at 4,6.2 radius 2 fc rgb "​orange"​ front
 +set object 3 ellipse at 6,2.5 size 3,8 angle 40 fc rgb "​blue"​
 +set object 4 polygon from 8.6,4 to 8.6,8 to 8.2,8 to 9.2,9.6 \
 +to 10,8 to 9.6,8 to 9.6,4 to 8.6,4
 +plot NaN </​file>​
 +\\ 
 +{{::​gnuplot:​essai5.jpg?​direct 300|}}
 +\\ 
 +Source [[https://​commons.wikimedia.org/​wiki/​File:​Bielefeld_population.svg?​uselang=fr|Wikipédia (licence domaine publique)]]
 +{{::​gnuplot:​population.jpg ?direct 300|}}
 +\\ 
  
-===== Voir aussi =====+Source [[https://​commons.wikimedia.org/​wiki/​File:​Mathc_art_01.jpg?​uselang=fr?uselang=fr|Wikipédia (licence domaine publique)]] 
 +{{ ::​gnuplot:​Mathc_art_01.jpg?​direct 300|}} 
 +\\ 
  
 +Source [[https://​commons.wikimedia.org/​wiki/​File:​Signal_5.svg?​uselang=fr?​uselang=fr|Wikipédia (licence domaine publique)]]
 +{{ ::​gnuplot:​signal_5.jpg?​direct 300|}}
 +\\ 
 +===== Voir aussi =====
 +  * [[Matplotlib]]
   * **(en)** [[http://​www.gnuplot.info/​|Le site officiel]]   * **(en)** [[http://​www.gnuplot.info/​|Le site officiel]]
   * (fr) [[http://​enseignement.ensi-bourges.fr/​cours/​GNUPLOT/​document/​gnuplot.html|Cours sur Gnuplot]]   * (fr) [[http://​enseignement.ensi-bourges.fr/​cours/​GNUPLOT/​document/​gnuplot.html|Cours sur Gnuplot]]
-  ​* (fr) [[http://​www.info.univ-angers.fr/​aides/​tutgnuplot.html|Tutoriel pour Gnuplot]] +  * (fr) [[http://​perso.ensta-paristech.fr/​~kielbasi/​docs/​gnuplot.pdf|Aide - mémoire ​Gnuplot 4.0 de Nicolas Kielbasiewicz]] 
-  ​* (fr) [[http://​perso.ensta-paristech.fr/​~kielbasi/​docs/​gnuplot.pdf|Aide - mémoire ​Gnuplot 4.0 de Nicolas Kielbasiewicz]] +  * (fr) [[https://​bdesgraupes.pagesperso-orange.fr/​UPX/​Tutoriels/​presentation_gnuplot.pdf|Tutoriel Gnuplot - Bernard Desgraupes - Université Paris Ouest]] 
-  * (fr) [[http://​bdesgraupes.pagesperso-orange.fr/​UPX/​Tutoriels/​presentation_gnuplot.pdf|Tutoriel Gnuplot - Bernard Desgraupes - Université Paris Ouest]] +  * (fr) [[http://​enseignement.ensi-bourges.fr/​cours/​GNUPLOT/​document/​gnuplot.html|Tutoriel Gnuplot]] ​FIXME lien inaccessible,​ le 2/03/2018
-  * (fr) [[http://​enseignement.ensi-bourges.fr/​cours/​GNUPLOT/​document/​gnuplot.html|Tutoriel Gnuplot]]+
  
 ---- ----
  
 //​Contributeur : [[utilisateurs:​laden]].//​ //​Contributeur : [[utilisateurs:​laden]].//​
  • gnuplot.txt
  • Dernière modification: Le 11/09/2022, 12:04
  • par moths-art