Nota
Fare clic qui per scaricare il codice di esempio completo
Styling con cycler #
Demo delle impostazioni del ciclo di proprietà personalizzate per controllare i colori e altre proprietà di stile per i grafici multilinea.
Nota
Una documentazione più completa cycler
dell'API può essere trovata
qui .
Questo esempio mostra due diverse API:
Impostazione del parametro rc che specifica la proprietà predefinita cycle. Questo ha effetto su tutti gli assi successivi (ma non sugli assi già creati).
Impostazione della proprietà ciclo per una singola coppia di assi.
from cycler import cycler
import numpy as np
import matplotlib.pyplot as plt
Per prima cosa genereremo alcuni dati di esempio, in questo caso quattro curve sinusoidali sfalsate.
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])
Ora yy
ha forma
print(yy.shape)
(50, 4)
Quindi ti darà la -esima curva sinusoidale offset. Impostiamo l'impostazione predefinita utilizzando . Combineremo un color cycler e un linestyle cycler aggiungendo ( ) due insieme. Vedere la parte inferiore di questo tutorial per ulteriori informazioni sulla combinazione di diversi cycler.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)
Ora genereremo una figura con due assi, uno sopra l'altro. Sul primo asse, tracciamo con il cycler predefinito. Sul secondo asse, imposteremo prop_cycle
using matplotlib.axes.Axes.set_prop_cycle()
, che imposterà solo prop_cycle
per questa matplotlib.axes.Axes
istanza. Useremo un secondo cycler
che combina un color cycler e un linewidth cycler.
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()
Impostazione prop_cycle
nel matplotlibrc
file o nei file di stile #
Ricorda, un cycler personalizzato può essere impostato nel tuo matplotlibrc
file o in un file di stile ( style.mplstyle
) in axes.prop_cycle
:
axes.prop_cycle : cycler(color='bgrcmyk')
Scorrere più proprietà #
Puoi aggiungere ciclisti:
Risultati in:
{'color': 'r', 'linestyle': '-'}
{'color': 'g', 'linestyle': '--'}
{'color': 'b', 'linestyle': '-.'}
Puoi moltiplicare i ciclisti:
Risultati in:
{'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': '-.'}