Taille de la figure dans différentes unités #

L'unité de taille de figure native dans Matplotlib est le pouce, dérivant des normes de l'industrie de l'impression. Cependant, les utilisateurs peuvent avoir besoin de spécifier leurs chiffres dans d'autres unités comme les centimètres ou les pixels. Cet exemple illustre comment le faire efficacement.

import matplotlib.pyplot as plt
text_kwargs = dict(ha='center', va='center', fontsize=28, color='C1')

Taille de la figure en pouces (par défaut) #

plt.subplots(figsize=(6, 2))
plt.text(0.5, 0.5, '6 inches x 2 inches', **text_kwargs)
plt.show()
unités de taille de figure

Taille de la figurine en centimètre #

La multiplication des nombres basés sur le centimètre avec un facteur de conversion de cm en pouces donne les bons nombres. Nommer le facteur cmde conversion donne presque l'impression d'ajouter une unité au nombre, ce qui est bien lisible.

cm = 1/2.54  # centimeters in inches
plt.subplots(figsize=(15*cm, 5*cm))
plt.text(0.5, 0.5, '15cm x 5cm', **text_kwargs)
plt.show()
unités de taille de figure

Taille de la figure en pixel #

De même, on peut utiliser une conversion de pixels.

Notez que vous pouvez casser cela si vous utilisez savefigavec une valeur de dpi explicite différente.

px = 1/plt.rcParams['figure.dpi']  # pixel in inches
plt.subplots(figsize=(600*px, 200*px))
plt.text(0.5, 0.5, '600px x 200px', **text_kwargs)
plt.show()
unités de taille de figure

Le travail interactif rapide est généralement rendu à l'écran, ce qui fait des pixels une bonne taille d'unité. Mais définir le facteur de conversion peut sembler un peu fastidieux pour des itérations rapides.

En raison de la valeur par défaut , on peut mentalement diviser la valeur de pixel nécessaire par 100 [ 1 ] :rcParams['figure.dpi'] = 100

plt.subplots(figsize=(6, 2))
plt.text(0.5, 0.5, '600px x 200px', **text_kwargs)
plt.show()
unités de taille de figure

Références

L'utilisation des fonctions, méthodes, classes et modules suivants est illustrée dans cet exemple :

Galerie générée par Sphinx-Gallery