NumPy - Matplotlib
Matplotlib est une bibliothèque de traçage pour Python. Il est utilisé avec NumPy pour fournir un environnement qui est une alternative open source efficace pour MatLab. Il peut également être utilisé avec des kits d'outils graphiques tels que PyQt et wxPython.
Le module Matplotlib a d'abord été écrit par John D. Hunter. Depuis 2012, Michael Droettboom est le développeur principal. Actuellement, Matplotlib ver. 1.5.1 est la version stable disponible. Le paquet est disponible en distribution binaire ainsi que sous forme de code source sur www.matplotlib.org .
Par convention, le package est importé dans le script Python en ajoutant l'instruction suivante -
from matplotlib import pyplot as plt
Ici pyplot()est la fonction la plus importante de la bibliothèque matplotlib, utilisée pour tracer des données 2D. Le script suivant trace l'équationy = 2x + 5
Exemple
import numpy as np
from matplotlib import pyplot as plt
x = np.arange(1,11)
y = 2 * x + 5
plt.title("Matplotlib demo")
plt.xlabel("x axis caption")
plt.ylabel("y axis caption")
plt.plot(x,y)
plt.show()
Un objet ndarray x est créé à partir de np.arange() function comme les valeurs sur le x axis. Les valeurs correspondantes sur ley axis sont stockés dans un autre ndarray object y. Ces valeurs sont tracées à l'aide deplot() fonction du sous-module pyplot du package matplotlib.
La représentation graphique est affichée par show() fonction.
Le code ci-dessus doit produire la sortie suivante -
Au lieu du graphe linéaire, les valeurs peuvent être affichées discrètement en ajoutant une chaîne de format à la plot()fonction. Les caractères de formatage suivants peuvent être utilisés.
N ° Sr. | Caractère et description |
---|---|
1 | '-' Style de ligne continue |
2 | '--' Style de ligne pointillée |
3 | '-.' Style de ligne pointillé |
4 | ':' Style de ligne pointillée |
5 | '.' Marqueur de point |
6 | ',' Marqueur de pixel |
sept | 'o' Marqueur de cercle |
8 | 'v' Marqueur Triangle_down |
9 | '^' Marqueur Triangle_up |
dix | '<' Marqueur Triangle_left |
11 | '>' Marqueur Triangle_right |
12 | '1' Marqueur Tri_down |
13 | '2' Marqueur Tri_up |
14 | '3' Marqueur Tri_left |
15 | '4' Marqueur Tri_right |
16 | 's' Marqueur carré |
17 | 'p' Marqueur Pentagone |
18 | '*' Marqueur étoile |
19 | 'h' Marqueur Hexagon1 |
20 | 'H' Marqueur Hexagon2 |
21 | '+' Marqueur Plus |
22 | 'x' Marqueur X |
23 | 'D' Marqueur diamant |
24 | 'd' Marqueur Thin_diamond |
25 | '|' Marqueur Vline |
26 | '_' Marqueur Hline |
Les abréviations de couleur suivantes sont également définies.
Personnage | Couleur |
---|---|
«b» | Bleu |
'g' | vert |
«r» | rouge |
«c» | Cyan |
«m» | Magenta |
«y» | Jaune |
«k» | Noir |
«w» | blanc |
Pour afficher les cercles représentant des points, au lieu de la ligne dans l'exemple ci-dessus, utilisez “ob” comme chaîne de format dans la fonction plot ().
Exemple
import numpy as np
from matplotlib import pyplot as plt
x = np.arange(1,11)
y = 2 * x + 5
plt.title("Matplotlib demo")
plt.xlabel("x axis caption")
plt.ylabel("y axis caption")
plt.plot(x,y,"ob")
plt.show()
Le code ci-dessus doit produire la sortie suivante -
Tracé sinusoïdal
Le script suivant produit le sine wave plot en utilisant matplotlib.
Exemple
import numpy as np
import matplotlib.pyplot as plt
# Compute the x and y coordinates for points on a sine curve
x = np.arange(0, 3 * np.pi, 0.1)
y = np.sin(x)
plt.title("sine wave form")
# Plot the points using matplotlib
plt.plot(x, y)
plt.show()
sous-tracé ()
La fonction subplot () vous permet de tracer différentes choses dans la même figure. Dans le script suivant,sine et cosine values sont tracés.
Exemple
import numpy as np
import matplotlib.pyplot as plt
# Compute the x and y coordinates for points on sine and cosine curves
x = np.arange(0, 3 * np.pi, 0.1)
y_sin = np.sin(x)
y_cos = np.cos(x)
# Set up a subplot grid that has height 2 and width 1,
# and set the first such subplot as active.
plt.subplot(2, 1, 1)
# Make the first plot
plt.plot(x, y_sin)
plt.title('Sine')
# Set the second subplot as active, and make the second plot.
plt.subplot(2, 1, 2)
plt.plot(x, y_cos)
plt.title('Cosine')
# Show the figure.
plt.show()
Le code ci-dessus doit produire la sortie suivante -
bar()
le pyplot submodule fournit bar()fonction pour générer des graphiques à barres. L'exemple suivant produit le graphique à barres de deux ensembles dex et y tableaux.
Exemple
from matplotlib import pyplot as plt
x = [5,8,10]
y = [12,16,6]
x2 = [6,9,11]
y2 = [6,15,7]
plt.bar(x, y, align = 'center')
plt.bar(x2, y2, color = 'g', align = 'center')
plt.title('Bar graph')
plt.ylabel('Y axis')
plt.xlabel('X axis')
plt.show()
Ce code devrait produire la sortie suivante -