teaching:progappchim:matplotlib_simple

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
Prochaine révisionLes deux révisions suivantes
teaching:progappchim:matplotlib_simple [2018/01/02 22:38] – [Références] villersdteaching:progappchim:matplotlib_simple [2020/05/08 12:07] villersd
Ligne 13: Ligne 13:
 Le projet [[http://wiki.scipy.org/PyLab|Pylab]] vise à regrouper ces différentes librairies. De nombreuses commandes de Pylab ont été définies semblablement aux commandes du logiciel commercial [[http://fr.wikipedia.org/wiki/MATLAB|MatLab]]. Le projet [[http://wiki.scipy.org/PyLab|Pylab]] vise à regrouper ces différentes librairies. De nombreuses commandes de Pylab ont été définies semblablement aux commandes du logiciel commercial [[http://fr.wikipedia.org/wiki/MATLAB|MatLab]].
  
 +TODO : différences pyplot comme ici : https://towardsdatascience.com/5-quick-facts-about-python-matplotlib-53f23eab6d31
  
 ===== Installation ===== ===== Installation =====
  
 La [[http://matplotlib.sourceforge.net/users/installing.html|page d'installation de Matplotlib]] fournit une procédure pas à pas assez complète et facile pour installer matplotlib (et NumPy). Sinon : La [[http://matplotlib.sourceforge.net/users/installing.html|page d'installation de Matplotlib]] fournit une procédure pas à pas assez complète et facile pour installer matplotlib (et NumPy). Sinon :
-  * Sous Windows, installez une distribution complète comme [[http://code.google.com/p/pythonxy/|Python (x, y)]] +  * Sous Windows, installez une distribution complète comme [[https://www.anaconda.com/distribution/|Anaconda]] ou [[http://code.google.com/p/pythonxy/|Python (x, y)]] 
-  * Sous Linux, installez les librairies suivantes : python-numpy python-scipy python-matplotlib+  * Sous GNU/Linux, on peut aussi n'installer que les librairies suivantes : python-numpy python-scipy python-matplotlib
  
 ===== Directive d'importation ==== ===== Directive d'importation ====
   * standard : <code>import matplotlib as mpl   * standard : <code>import matplotlib as mpl
 import matplotlib.pyplot as plt</code> import matplotlib.pyplot as plt</code>
-  * alternative, simplifiée (en mode pylab) : <code>from pylab import *</code>+  * alternative, simplifiée (en mode pylab, pour obtenir une certaine compatibilité avec Matlab) : <code>from pylab import *</code>
  
 ===== Graphiques de séries de points en lignes ===== ===== Graphiques de séries de points en lignes =====
Ligne 150: Ligne 151:
 À [[plot_sinus_cosinus|cette page]], on montre en détail comment réaliser une représentation graphique simple des fonctions sinus et cosinus. Au départ le graphique utilisera les réglages par défaut et la figure sera ensuite améliorée pas à pas en commentant les instructions matplotlib utilisées. À [[plot_sinus_cosinus|cette page]], on montre en détail comment réaliser une représentation graphique simple des fonctions sinus et cosinus. Au départ le graphique utilisera les réglages par défaut et la figure sera ensuite améliorée pas à pas en commentant les instructions matplotlib utilisées.
  
-Source : [[http://scipy-lectures.github.io/intro/matplotlib/matplotlib.html|Matplotlib: plotting]], par Nicolas Rougier, Mike Müller, Gaël Varoquaux.+Source : [[http://gael-varoquaux.info/scipy-lecture-notes/intro/matplotlib/index.html|Matplotlib: plotting]], par Nicolas Rougier, Mike Müller, Gaël Varoquaux.
  
 <note tip>Cette dernière référence reprend aussi des explications sur les principes d'organisation des graphiques multiples sur une figure, propose d'autres types de graphes sous forme d'exercices avec les solutions disponibles, et propose de nombreux liens pour l'apprentissage de Matplotlib.</note> <note tip>Cette dernière référence reprend aussi des explications sur les principes d'organisation des graphiques multiples sur une figure, propose d'autres types de graphes sous forme d'exercices avec les solutions disponibles, et propose de nombreux liens pour l'apprentissage de Matplotlib.</note>
Ligne 159: Ligne 160:
 | {{:teaching:progappchim:ph_topographic-01.png?280|}} \\ [[teaching:progappchim:ph-3d|Ph à 3D]] \\ (dilution et neutralisation)| un autre... | un autre... | | {{:teaching:progappchim:ph_topographic-01.png?280|}} \\ [[teaching:progappchim:ph-3d|Ph à 3D]] \\ (dilution et neutralisation)| un autre... | un autre... |
 | un autre... | un autre... | un autre... | | un autre... | un autre... | un autre... |
 +
 +===== Utilisation "inline" ou en fenêtre interactive, sous Spyder =====
 +Notamment avec l'éditeur Spyder, il est possible de choisir le mode d'affichage des graphes :
 +  * dans une fenêtre interactive
 +  * en ligne (mode "inline") sous forme d'une image au format .png, dans la console
 +Pour choisir le mode, utiliser les réglages suivants de Spyder : menu Outils - option Préférences - rubrique Console Ipython - onglet Graphiques - la sortie "Automatique" permet d'obtenir les graphes dans une fenêtre interactive, sinon, choisir "En ligne". L'option sera prise en compte après avoir quitté Spyder et l'avoir relancé. Sinon, il est possible de sélectionner l'un ou l'autre des modes par les commandes suivantes dans la console :
 +<code>
 +%matplotlib auto
 +%matplotlib inline
 +</code>
 +
 +===== Animations =====
 +  * [[https://towardsdatascience.com/animations-with-matplotlib-d96375c5442c|Animations with Matplotlib]] FIXME
 +  * [[https://matplotlib.org/gallery/animation/rain.html]]
  
 ===== Références ===== ===== Références =====
Ligne 170: Ligne 185:
   * [[http://python.developpez.com/tutoriels/graphique-2d/matplotlib/|Tutoriel en français]]   * [[http://python.developpez.com/tutoriels/graphique-2d/matplotlib/|Tutoriel en français]]
   * [[http://www.science-emergence.com/Matplotlib/|Un autre tutoriel en français]]   * [[http://www.science-emergence.com/Matplotlib/|Un autre tutoriel en français]]
 +  * [[http://nbviewer.jupyter.org/github/jrjohansson/scientific-python-lectures/blob/master/Lecture-4-Matplotlib.ipynb|matplotlib - 2D and 3D plotting in Python]], tutoriel Jupyter en anglais
   * [[https://github.com/thehackerwithin/PyTrieste/wiki/Python7-MatPlotLib|Un tutoriel en anglais]]   * [[https://github.com/thehackerwithin/PyTrieste/wiki/Python7-MatPlotLib|Un tutoriel en anglais]]
   * [[http://scipy-lectures.github.io/intro/matplotlib/matplotlib.html|Matplotlib: plotting]], par Nicolas Rougier, Mike Müller, Gaël Varoquaux (et la [[http://www.labri.fr/perso/nrougier/teaching/matplotlib/|version dérivée]] de Nicolas Rougier)   * [[http://scipy-lectures.github.io/intro/matplotlib/matplotlib.html|Matplotlib: plotting]], par Nicolas Rougier, Mike Müller, Gaël Varoquaux (et la [[http://www.labri.fr/perso/nrougier/teaching/matplotlib/|version dérivée]] de Nicolas Rougier)
 +  * [[https://realpython.com/python-matplotlib-guide/|Python Plotting With Matplotlib (Guide)]], 2018
   * [[http://www.thetechrepo.com/main-articles/465-how-to-create-a-graph-in-python.html]]   * [[http://www.thetechrepo.com/main-articles/465-how-to-create-a-graph-in-python.html]]
   * Un article intéressant sur les recommandations pour de bonnes figures : [[http://www.ploscompbiol.org/article/info%3Adoi%2F10.1371%2Fjournal.pcbi.1003833|Ten Simple Rules for Better Figures]], Nicolas P. Rougier (INRIA, France). Les figures sont crées avec matplotlib et l'ensemble de l'article est disponible sous licence CC0.   * Un article intéressant sur les recommandations pour de bonnes figures : [[http://www.ploscompbiol.org/article/info%3Adoi%2F10.1371%2Fjournal.pcbi.1003833|Ten Simple Rules for Better Figures]], Nicolas P. Rougier (INRIA, France). Les figures sont crées avec matplotlib et l'ensemble de l'article est disponible sous licence CC0.
Ligne 179: Ligne 196:
   * [[https://seaborn.pydata.org/|Seaborn]], une librairie basée sur Matplotlib   * [[https://seaborn.pydata.org/|Seaborn]], une librairie basée sur Matplotlib
     * [[https://python-graph-gallery.com/|the Python Graph Gallery]], galerie de graphes Seaborn/Matplotlib avec code     * [[https://python-graph-gallery.com/|the Python Graph Gallery]], galerie de graphes Seaborn/Matplotlib avec code
 +    * [[https://medium.com/@neuralnets/statistical-data-visualization-series-with-python-and-seaborn-for-data-science-5a73b128851d|Data Visualization with Python and Seaborn]]
 +  * [[https://waterprogramming.wordpress.com/2016/04/29/interactive-plotting-basics-in-matplotlib/|Interactive plotting basics in matplotlib]]
 +  * [[https://heartbeat.fritz.ai/introduction-to-matplotlib-data-visualization-in-python-d9143287ae39|Introduction to Matplotlib — Data Visualization in Python]]
 +  * [[https://towardsdatascience.com/all-your-matplotlib-questions-answered-420dd95cb4ff|Your Ultimate Guide to Matplotlib]] (not so ultimate...)
 +  * [[https://towardsdatascience.com/a-step-by-step-guide-for-creating-advanced-python-data-visualizations-with-seaborn-matplotlib-1579d6a1a7d0|A step-by-step guide for creating advanced Python data visualizations with Seaborn / Matplotlib]]
 +  * [[https://medium.com/dunder-data/create-a-bar-chart-race-animation-in-python-with-matplotlib-477ed1590096|Creating a Bar Chart Race Animation in Python with Matplotlib]]
  
 +==== Exemples ==== 
 +  * [[https://towardsdatascience.com/5-quick-and-easy-data-visualizations-in-python-with-code-a2284bae952f|5 Quick and Easy Data Visualizations in Python with Code]] 
 +  * Jupyter notebooks :  
 +    * [[http://nbviewer.jupyter.org/github/jming/cs109/blob/master/lec_03_statistical_graphs.ipynb|A Gallery of Statistical Graphs in Matplotlib]] 
 +    * [[http://nbviewer.jupyter.org/url/jakevdp.github.com/downloads/notebooks/XKCD_plots.ipynb|XKCD plots in Matplotlib]] + [[http://nbviewer.jupyter.org/url/jakevdp.github.io/downloads/notebooks/XKCD_sketch_path.ipynb|ceci]]
  • teaching/progappchim/matplotlib_simple.txt
  • Dernière modification : 2023/07/11 07:46
  • de villersd