Noter
Cliquez ici pour télécharger l'exemple de code complet
Coiffage avec cycleur #
Démonstration des paramètres de cycle de propriétés personnalisés pour contrôler les couleurs et autres propriétés de style pour les tracés multilignes.
Noter
Une documentation plus complète de l' cycler
API peut être trouvée
ici .
Cet exemple illustre deux API différentes :
Définition du paramètre rc spécifiant le cycle de propriétés par défaut. Cela affecte tous les axes suivants (mais pas les axes déjà créés).
Réglage du cycle de propriété pour une seule paire d'axes.
from cycler import cycler
import numpy as np
import matplotlib.pyplot as plt
Nous allons d'abord générer des exemples de données, dans ce cas, quatre courbes sinusoïdales décalées.
x = np.linspace(0, 2 * np.pi, 50)
offsets = np.linspace(0, 2 * np.pi, 4, endpoint=False)
yy = np.transpose([np.sin(x + phi) for phi in offsets])
A maintenant yy
forme
print(yy.shape)
(50, 4)
Ainsi , vous obtiendrez la -ème courbe sinusoïdale décalée. Définissons la valeur par défaut en utilisant . Nous allons combiner un cycleur de couleurs et un cycleur de style de ligne en ajoutant ( ) deux ensembles. Voir le bas de ce didacticiel pour plus d'informations sur la combinaison de différents cycleurs.yy[:, i]
i
prop_cycle
matplotlib.pyplot.rc()
+
cycler
default_cycler = (cycler(color=['r', 'g', 'b', 'y']) +
cycler(linestyle=['-', '--', ':', '-.']))
plt.rc('lines', linewidth=4)
plt.rc('axes', prop_cycle=default_cycler)
Nous allons maintenant générer une figure avec deux axes, l'un au-dessus de l'autre. Sur le premier axe, nous tracerons avec le cycleur par défaut. Sur le deuxième axe, nous allons définir prop_cycle
using matplotlib.axes.Axes.set_prop_cycle()
, qui ne définira que le prop_cycle
pour cette matplotlib.axes.Axes
instance. Nous allons utiliser un second cycler
qui combine un cycleur de couleur et un cycleur de largeur de ligne.
custom_cycler = (cycler(color=['c', 'm', 'y', 'k']) +
cycler(lw=[1, 2, 3, 4]))
fig, (ax0, ax1) = plt.subplots(nrows=2)
ax0.plot(yy)
ax0.set_title('Set default color cycle to rgby')
ax1.set_prop_cycle(custom_cycler)
ax1.plot(yy)
ax1.set_title('Set axes color cycle to cmyk')
# Add a bit more space between the two plots.
fig.subplots_adjust(hspace=0.3)
plt.show()
Réglage prop_cycle
dans le matplotlibrc
fichier ou les fichiers de style #
N'oubliez pas qu'un cycleur personnalisé peut être défini dans votre matplotlibrc
fichier ou dans un fichier de style ( style.mplstyle
) sousaxes.prop_cycle
:
axes.prop_cycle : cycler(color='bgrcmyk')
Faire du vélo à travers plusieurs propriétés #
Vous pouvez ajouter des cycleurs :
Résulte en:
{'color': 'r', 'linestyle': '-'}
{'color': 'g', 'linestyle': '--'}
{'color': 'b', 'linestyle': '-.'}
Vous pouvez multiplier les cycleurs :
Résulte en:
{'color': 'r', 'linestyle': '-'}
{'color': 'r', 'linestyle': '--'}
{'color': 'r', 'linestyle': '-.'}
{'color': 'g', 'linestyle': '-'}
{'color': 'g', 'linestyle': '--'}
{'color': 'g', 'linestyle': '-.'}
{'color': 'b', 'linestyle': '-'}
{'color': 'b', 'linestyle': '--'}
{'color': 'b', 'linestyle': '-.'}