matplotlib
#
Une bibliothèque de traçage orientée objet.
Une interface procédurale est fournie par le module compagnon pyplot, qui peut être importé directement, par exemple :
import matplotlib.pyplot as plt
ou en utilisant ipython :
ipython
à votre terminal, suivi de :
In [1]: %matplotlib
In [2]: import matplotlib.pyplot as plt
à l'invite du shell ipython.
Pour la plupart, l'utilisation directe de la bibliothèque orientée objet explicite est encouragée lors de la programmation ; l'interface pyplot implicite est principalement destinée à travailler de manière interactive. Les exceptions à cette suggestion sont les fonctions pyplot pyplot.figure
, pyplot.subplot
, pyplot.subplots
et
pyplot.savefig
, qui peuvent grandement simplifier les scripts. Voir
Matplotlib Application Interfaces (APIs) pour une explication des compromis entre les interfaces implicites et explicites.
Les modules incluent :
matplotlib.axes
La
Axes
classe. La plupart des fonctions pyplot sont des wrappers pourAxes
les méthodes. Le module axes est le plus haut niveau d'accès OO à la bibliothèque.matplotlib.figure
La
Figure
classe.matplotlib.artist
La
Artist
classe de base pour toutes les classes qui dessinent des choses.matplotlib.lines
La
Line2D
classe pour tracer des lignes et des marqueurs.matplotlib.patches
Classes pour dessiner des polygones.
matplotlib.text
Les cours
Text
etAnnotation
.matplotlib.image
Les cours
AxesImage
etFigureImage
.matplotlib.collections
Classes pour le dessin efficace de groupes de lignes ou de polygones.
matplotlib.colors
Spécifications des couleurs et création de palettes de couleurs.
matplotlib.cm
Colormaps et la
ScalarMappable
classe mixin pour fournir des fonctionnalités de mappage de couleurs à d'autres classes.matplotlib.ticker
Calcul des emplacements des graduations et formatage des étiquettes de graduation.
matplotlib.backends
Un sous-package avec des modules pour diverses bibliothèques GUI et formats de sortie.
L'espace de noms matplotlib de base comprend :
rcParams
Paramètres de configuration par défaut ; leurs valeurs par défaut peuvent être remplacées à l'aide d'un
matplotlibrc
fichier.use
Configuration du backend Matplotlib. Cela devrait être appelé avant la création de toute figure, car il n'est pas possible de basculer entre les différents backends de l'interface graphique après cela.
Matplotlib a été initialement écrit par John D. Hunter (1968-2012) et est maintenant développé et maintenu par une foule d'autres.
Parfois, la documentation interne (python docstrings) fera référence à MATLAB®, une marque déposée de The MathWorks, Inc.
Gestion back-end #
- matplotlib. utiliser ( backend , * , force = True ) [source] #
Sélectionnez le backend utilisé pour le rendu et l'intégration de l'interface graphique.
- Paramètres :
- chaîne principale
Le backend vers lequel basculer. Il peut s'agir de l'un des noms de backend standard, qui ne sont pas sensibles à la casse :
backends interactifs : GTK3Agg, GTK3Cairo, GTK4Agg, GTK4Cairo, MacOSX, nbAgg, QtAgg, QtCairo, TkAgg, TkCairo, WebAgg, WX, WXAgg, WXCairo, Qt5Agg, Qt5Cairo
backends non interactifs : agg, cairo, pdf, pgf, ps, svg, template
ou une chaîne de la forme :
module://my.module.name
.Le passage à un backend interactif n'est pas possible si une boucle d'événements sans rapport a déjà été démarrée (par exemple, le passage à GTK3Agg si une fenêtre TkAgg a déjà été ouverte). Passer à un backend non interactif est toujours possible.
- forcer bool, par défaut : Vrai
Si True (valeur par défaut), déclenchez un
ImportError
si le backend ne peut pas être configuré (soit parce qu'il ne parvient pas à importer, soit parce qu'un framework interactif GUI incompatible est déjà en cours d'exécution) ; si False, ignore silencieusement l'échec.
Voir également
- matplotlib. interactif ( b ) [source] #
Définissez s'il faut redessiner après chaque commande de traçage (par exemple
pyplot.xlabel
).
- matplotlib. est_interactif ( ) [source] #
Indique s'il faut redessiner après chaque commande de traçage.
Noter
Cette fonction est uniquement destinée à être utilisée dans les backends. Les utilisateurs finaux doivent utiliser à la
pyplot.isinteractive
place.
Valeurs par défaut et style #
- matplotlib. rcParams [source] #
Une instance de
RcParams
pour gérer les valeurs Matplotlib par défaut.
- matplotlib de la classe . RcParams ( * args , ** kwargs ) [source] #
Un objet dictionnaire incluant la validation.
Les fonctions de validation sont définies et associées aux paramètres rc dans
matplotlib.rcsetup
.La liste des rcParams est :
_internal.classic_mode
agg.path.chunksize
animation.bitrate
animation.codec
animation.convert_args
animation.convert_path
animation.embed_limit
animation.ffmpeg_args
animation.ffmpeg_path
animation.frame_format
animation.html
animation.writer
axes.autolimit_mode
axes.axisbelow
axes.edgecolor
axes.facecolor
axes.formatter.limits
axes.formatter.min_exponent
axes.formatter.offset_threshold
axes.formatter.use_locale
axes.formatter.use_mathtext
axes.formatter.useoffset
axes.grid
axes.grille.axe
axes.grille.qui
axes.labelcolor
axes.labelpad
axes.labelsize
axes.labelweight
axes.linewidth
axes.prop_cycle
axes.spines.bottom
axes.spines.gauche
axes.spines.right
axes.spines.top
axes.titlecolor
axes.titlelocation
axes.titlepad
axes.titlesize
axes.titleweight
axes.titley
axes.unicode_minus
axes.xmargin
axes.ymarge
axes.zmargin
axes3d.grid
backend
backend_fallback
boxplot.bootstrap
boxplot.boxprops.color
boxplot.boxprops.linestyle
boxplot.boxprops.linewidth
boxplot.capprops.color
boxplot.capprops.linestyle
boxplot.capprops.linewidth
boxplot.flierprops.color
boxplot.flierprops.linestyle
boxplot.flierprops.linewidth
boxplot.flierprops.marker
boxplot.flierprops.markeredgecolor
boxplot.flierprops.markeredgewidth
boxplot.flierprops.markerfacecolor
boxplot.flierprops.markersize
boxplot.meanline
boxplot.meanprops.color
boxplot.meanprops.linestyle
boxplot.meanprops.linewidth
boxplot.meanprops.marker
boxplot.meanprops.markeredgecolor
boxplot.meanprops.markerfacecolor
boxplot.meanprops.markersize
boxplot.medianprops.color
boxplot.medianprops.linestyle
boxplot.medianprops.linewidth
boxplot.notch
boxplot.patchartist
boxplot.showbox
boxplot.showcaps
boxplot.showfliers
boxplot.showmeans
boxplot.vertical
boxplot.whiskerprops.color
boxplot.whiskerprops.linestyle
boxplot.whiskerprops.linewidth
boxplot.whiskers
contour.algorithme
contour.corner_mask
contour.linewidth
contour.negative_linestyle
date.autoformatter.day
date.autoformatter.heure
date.autoformatter.microseconde
date.autoformatter.minute
date.autoformatter.mois
date.autoformatter.seconde
date.autoformatter.année
date.converter
date.epoch
date.interval_multiples
docstring.hardcopy
barre d'erreur.capsize
figure.autolayout
figure.constrained_layout.h_pad
figure.constrained_layout.hspace
figure.constrained_layout.use
figure.constrained_layout.w_pad
figure.constrained_layout.wspace
figure.dpi
figure.edgecolor
figure.facecolor
figure.figsize
figure.frameon
figure.labelsize
figure.labelweight
figure.max_open_warning
figure.raise_window
figure.subplot.bottom
figure.subplot.hspace
figure.subplot.left
figure.subplot.right
figure.subplot.top
figure.subplot.wspace
figure.titlesize
figure.titleweight
police.cursive
famille de polices
font.fantasy
font.monospace
police.sans-serif
police.serif
taille de police
font.stretch
le style de police
police.variante
font.weight
grille.alpha
grille.couleur
grille.linestyle
grid.linewidth
trappe.couleur
hatch.linewidth
hist.bins
image.aspect
image.cmap
image.composite_image
image.interpolation
image.lut
image.origine
image.resample
interactif
keymap.retour
keymap.copy
keymap.forward
keymap.fullscreen
keymap.grid
keymap.grid_minor
keymap.help
keymap.accueil
keymap.pan
keymap.quit
keymap.quit_all
keymap.save
keymap.xscale
keymap.yscale
keymap.zoom
legend.borderaxespad
légende.borderpad
legend.columnspacing
legend.edgecolor
légende.facecolor
légende.fancybox
légende.fontsize
legend.framealpha
légende.frameon
legend.handleheight
legend.handlelength
légende.handletextpad
legend.labelcolor
legend.labelspacing
légende.loc
legend.markerscale
légende.numpoints
legend.scatterpoints
légende.ombre
légende.title_fontsize
lignes.anticrénelées
lignes.couleur
lignes.dash_capstyle
lignes.dash_joinstyle
lignes.dashdot_pattern
lignes.dashed_pattern
lignes.dotted_pattern
lignes.linestyle
lignes.linewidth
lignes.marqueur
lines.markeredgecolor
lines.markeredgewidth
lines.markerfacecolor
lignes.markersize
lignes.scale_dashes
lines.solid_capstyle
lines.solid_joinstyle
marqueurs.fillstyle
mathtext.bf
mathtext.cal
mathtext.default
mathtext.fallback
mathtext.fontset
mathtext.it
mathtext.rm
mathtext.sf
mathtext.tt
patch.anticrénelé
patch.edgecolor
patch.facecolor
patch.force_edgecolor
patch.linewidth
chemin.effets
chemin.simplifier
path.simplify_threshold
path.sketch
path.snap
pcolor.shading
pcolormesh.snap
pdf.compression
pdf.fonttype
pdf.inheritcolor
pdf.use14corefonts
pgf.préambule
pgf.rcfonts
pgf.texsystem
polaraxes.grille
ps.distiller.res
ps.fonttype
ps.papersize
ps.useafm
ps.usistiller
savefig.bbox
savefig.directory
savefig.dpi
savefig.edgecolor
savefig.facecolor
savefig.format
enregistrerfig.orientation
savefig.pad_inches
savefig.transparent
scatter.edgecolors
scatter.marker
svg.fonttype
svg.hashsalt
svg.image_inline
texte.anticrénelé
text.color
text.hinting
text.hinting_factor
text.kerning_factor
texte.latex.préambule
text.parse_math
texte.usetex
fuseau horaire
tk.window_focus
barre d'outils
adressewebagg.address
webagg.open_in_browser
webagg.port
webagg.port_retries
xaxis.labellocation
xtick.alignment
xtick.bottom
xtick.color
xtic.direction
xtick.labelbottom
xtick.labelcolor
xtick.labelsize
xtick.labeltop
xtick.major.bottom
xtick.major.pad
xtick.major.size
xtick.major.top
xtick.major.width
xtick.mineur.bottom
xtick.minor.pad
xtick.minor.size
xtick.mineur.top
xtick.mineur.visible
xtick.minor.width
xtick.top
yaxis.labellocation
ytick.alignement
ytick.color
ytick.direction
ytick.labelcolor
ytick.labelleft
ytick.labelright
ytick.labelsize
ytick.left
ytick.major.gauche
ytick.major.pad
ytick.major.right
ytick.major.size
ytick.major.width
ytick.minor.left
ytick.minor.pad
ytick.minor.right
ytick.minor.size
ytick.minor.visible
ytick.minor.width
ytick.right
Voir également
- find_all ( motif ) [source] #
Renvoie le sous-ensemble de ce dictionnaire RcParams dont les clés correspondent, en utilisant
re.search()
, au donnépattern
.Noter
Les modifications apportées au dictionnaire renvoyé ne sont pas propagées au dictionnaire RcParams parent.
- matplotlib. rc_context ( rc = None , fname = None ) [source] #
Renvoie un gestionnaire de contexte pour modifier temporairement rcParams.
Le
rcParams["backend"]
ne sera pas réinitialisé par le gestionnaire de contexte.- Paramètres :
- rc dict
Les rcParams à définir temporairement.
- fname str ou path-like
Un fichier avec les paramètres Matplotlib rc. Si fname et rc sont donnés, les paramètres de rc sont prioritaires.
Voir également
Exemples
Passer des valeurs explicites via un dict :
with mpl.rc_context({'interactive': False}): fig, ax = plt.subplots() ax.plot(range(3), range(3)) fig.savefig('example.png') plt.close(fig)
Chargement des paramètres à partir d'un fichier :
with mpl.rc_context(fname='print.rc'): plt.plot(x, y) # uses 'print.rc'
- matplotlib. rc ( groupe , ** kwargs ) [source] #
Réglez le courant
rcParams
. groupe est le groupement pour le rc, par exemple, pourlines.linewidth
le groupe estlines
, pouraxes.facecolor
, le groupe estaxes
, et ainsi de suite. Group peut également être une liste ou un tuple de noms de groupe, par exemple ( xtick , ytick ). kwargs est une paire nom/valeur d'attribut de dictionnaire, par exemple :rc('lines', linewidth=2, color='r')
définit le courant
rcParams
et équivaut à :rcParams['lines.linewidth'] = 2 rcParams['lines.color'] = 'r'
Les alias suivants sont disponibles pour économiser la saisie pour les utilisateurs interactifs :
Alias
Propriété
'lw'
'largeur de ligne'
'ls'
'style de ligne'
'c'
'Couleur'
'fc'
'facecolor'
'ec'
'couleur de bord'
'miauler'
'markeredgewidth'
'aa'
'anticrénelé'
Ainsi, vous pouvez abréger l'appel ci-dessus comme suit :
rc('lines', lw=2, c='r')
Notez que vous pouvez utiliser la fonction de dictionnaire kwargs de python pour stocker les dictionnaires des paramètres par défaut. par exemple, vous pouvez personnaliser la police rc comme suit :
font = {'family' : 'monospace', 'weight' : 'bold', 'size' : 'larger'} rc('font', **font) # pass in the font dict as kwargs
Cela vous permet de basculer facilement entre plusieurs configurations. Utilisez
matplotlib.style.use('default')
ourcdefaults()
pour restaurer la valeur par défautrcParams
après les modifications.Remarques
Une fonctionnalité similaire est disponible en utilisant l'interface dict normale, c'est-à-dire (mais ne prend pas en charge les abréviations ou le regroupement).
rcParams.update({"lines.linewidth": 2, ...})
rcParams.update
- matplotlib. rcdefaults ( ) [source] #
Restaurez le
rcParams
style interne par défaut de Matplotlib.Les styles sur liste noire
rcParams
(définis dansmatplotlib.style.core.STYLE_BLACKLIST
) ne sont pas mis à jour.Voir également
matplotlib.rc_file_defaults
Restaurez le
rcParams
à partir du fichier rc chargé à l'origine par Matplotlib.matplotlib.style.use
Utilisez un fichier de style spécifique. Appelez
style.use('default')
pour restaurer le style par défaut.
- matplotlib. rc_file_defaults ( ) [source] #
Restaurez le
rcParams
à partir du fichier rc d'origine chargé par Matplotlib.Les styles sur liste noire
rcParams
(définis dansmatplotlib.style.core.STYLE_BLACKLIST
) ne sont pas mis à jour.
- matplotlib. rc_file ( fname , * , use_default_template = True ) [source] #
Mise à jour
rcParams
à partir du fichier.Les styles sur liste noire
rcParams
(définis dansmatplotlib.style.core.STYLE_BLACKLIST
) ne sont pas mis à jour.- Paramètres :
- fname str ou path-like
Un fichier avec les paramètres Matplotlib rc.
- use_default_template booléen
Si True, initialiser avec les paramètres par défaut avant de mettre à jour avec ceux du fichier donné. Si False, la configuration actuelle persiste et seuls les paramètres spécifiés dans le fichier sont mis à jour.
- matplotlib. rc_params ( fail_on_error = False ) [source] #
Construisez une
RcParams
instance à partir du fichier Matplotlib rc par défaut.
- matplotlib. rc_params_from_file ( fname , fail_on_error = False , use_default_template = True ) [source] #
Construire un
RcParams
à partir du fichier fname .- Paramètres :
- fname str ou path-like
Un fichier avec les paramètres Matplotlib rc.
- fail_on_error booléen
Si True, déclenche une erreur lorsque l'analyseur ne parvient pas à convertir un paramètre.
- use_default_template booléen
Si True, initialiser avec les paramètres par défaut avant de mettre à jour avec ceux du fichier donné. Si False, la classe de configuration ne contient que les paramètres spécifiés dans le fichier. (Utile pour mettre à jour les dicts.)
- matplotlib. get_configdir ( ) [source] #
Renvoie la chaîne de chemin du répertoire de configuration.
Le répertoire est choisi comme suit :
Si la variable d'environnement MPLCONFIGDIR est fournie, choisissez-la.
Sous Linux, suivez la spécification XDG et regardez d'abord dans
$XDG_CONFIG_HOME
, s'il est défini, ou$HOME/.config
. Sur les autres plates-formes, choisissez$HOME/.matplotlib
.Si le répertoire choisi existe et est accessible en écriture, utilisez-le comme répertoire de configuration.
Sinon, créez un répertoire temporaire et utilisez-le comme répertoire de configuration.
- matplotlib. matplotlib_fname ( ) [source] #
Obtenez l'emplacement du fichier de configuration.
L'emplacement du fichier est déterminé dans l'ordre suivant
$PWD/matplotlibrc
$MATPLOTLIBRC
si ce n'est pas un répertoire$MATPLOTLIBRC/matplotlibrc
$MPLCONFIGDIR/matplotlibrc
- Sous Linux,
$XDG_CONFIG_HOME/matplotlib/matplotlibrc
(si$XDG_CONFIG_HOME
est défini)ou
$HOME/.config/matplotlib/matplotlibrc
(si$XDG_CONFIG_HOME
non défini)
Sur d'autres plates-formes, -
$HOME/.matplotlib/matplotlibrc
si$HOME
est définiEnfin, il regarde dans
$MATPLOTLIBDATA/matplotlibrc
, qui devrait toujours exister.
Journalisation #
- matplotlib. set_loglevel ( niveau ) [source] #
Définissez le niveau de l'enregistreur racine et du gestionnaire de l'enregistreur racine de Matplotlib, en créant le gestionnaire s'il n'existe pas encore.
Généralement, il faut appeler
set_loglevel("info")
ouset_loglevel("debug")
pour obtenir des informations de débogage supplémentaires.- Paramètres :
- niveau {"notset", "debug", "info", "warning", "error", "critical"}
Niveau de journalisation du gestionnaire.
Remarques
La première fois que cette fonction est appelée, un gestionnaire supplémentaire est attaché au gestionnaire racine de Matplotlib ; ce gestionnaire est réutilisé à chaque fois et cette fonction manipule simplement le niveau de l'enregistreur et du gestionnaire.
Palettes de couleurs et séquences de couleurs #
- matplotlib. palettes de couleurs [source] #
Conteneur pour les palettes de couleurs connues de Matplotlib par leur nom.
Expérimental
Bien que nous nous attendions à ce que l'API soit définitive, nous la marquons formellement comme expérimentale pour la version 3.5, car nous souhaitons conserver la possibilité d'adapter l'API pour la version 3.6 en cas de besoin.
L'instance de registre universel est
matplotlib.colormaps
. Les utilisateurs ne devraient pas avoir besoin de s'instancierColormapRegistry
eux-mêmes.L'accès en lecture utilise une interface de type dict mappant les noms à
Colormap
s :import matplotlib as mpl cmap = mpl.colormaps['viridis']
Les s retournés
Colormap
sont des copies, de sorte que leur modification ne change pas la définition globale de la palette de couleurs.Des palettes de couleurs supplémentaires peuvent être ajoutées via
ColormapRegistry.register
:mpl.colormaps.register(my_colormap)
- matplotlib. color_sequences [source] #
Conteneur pour les séquences de couleurs connues de Matplotlib par leur nom.
L'instance de registre universel est
matplotlib.color_sequences
. Les utilisateurs ne devraient pas avoir besoin de s'instancierColorSequenceRegistry
eux-mêmes.L'accès en lecture utilise une interface de type dict mappant les noms à des listes de couleurs :
import matplotlib as mpl cmap = mpl.color_sequences['tab10']
Les listes retournées sont des copies, de sorte que leur modification ne change pas la définition globale de la séquence de couleurs.
Des séquences de couleurs supplémentaires peuvent être ajoutées via
ColorSequenceRegistry.register
:mpl.color_sequences.register('rgb', ['r', 'g', 'b'])