Observação
Clique aqui para baixar o código de exemplo completo
Modelando com a cicladora #
Demonstração de configurações de ciclo de propriedade personalizadas para controlar cores e outras propriedades de estilo para plotagens de várias linhas.
Observação
A documentação mais completa da cyclerAPI pode ser encontrada
aqui .
Este exemplo demonstra duas APIs diferentes:
Definindo o parâmetro rc especificando o ciclo de propriedade padrão. Isso afeta todos os eixos subseqüentes (mas não os eixos já criados).
Definir o ciclo de propriedade para um único par de eixos.
from cycler import cycler
import numpy as np
import matplotlib.pyplot as plt
Primeiro vamos gerar alguns dados de amostra, neste caso, quatro curvas senoidais de deslocamento.
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])
Agora yytem forma
print(yy.shape)
(50, 4)
Assim , você obterá a -ésima curva senoidal de deslocamento. Vamos definir o padrão usando . Combinaremos um ciclador de cores e um ciclador de estilo de linha adicionando ( ) dois 's juntos. Consulte o final deste tutorial para obter mais informações sobre como combinar diferentes cicladores.yy[:, i]iprop_cyclematplotlib.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)
Agora vamos gerar uma figura com dois eixos, um em cima do outro. No primeiro eixo, plotaremos com o cycler padrão. No segundo eixo, definiremos prop_cycleusing matplotlib.axes.Axes.set_prop_cycle(), que definirá somente o prop_cyclepara esta matplotlib.axes.Axes
instância. Usaremos um segundo cyclerque combina um ciclador de cores e um ciclador de largura de linha.
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()

Configuração prop_cycleno matplotlibrcarquivo ou arquivos de estilo #
Lembre-se, um ciclador personalizado pode ser definido em seu matplotlibrc
arquivo ou em um arquivo de estilo ( style.mplstyle) em axes.prop_cycle:
axes.prop_cycle : cycler(color='bgrcmyk')
Percorrendo várias propriedades #
Você pode adicionar cicladores:
Resulta em:
{'color': 'r', 'linestyle': '-'}
{'color': 'g', 'linestyle': '--'}
{'color': 'b', 'linestyle': '-.'}
Você pode multiplicar cicladores:
Resulta em:
{'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': '-.'}