2015-12-13 9 views
9

axes.color_cycle obsoleto in Matplotlib 1.5. Tuttavia il suo utilizzo è stato abbastanza semplice: si potrebbe facilmente prendere un colore specifico da:Matplotlib 1.5 utilizzo di axes.prop_cycle

plt.rcParams['axes.color_cycle'][color_number] 

axes.prop_cycle non supporta questa sintassi:

ValueError: Can only use slices with Cycler.__getitem__ 

E cycler doc non è molto dettagliato http://matplotlib.org/cycler/

Così Non so come posso ottenere un colore specifico da prop_cycle. Qualche idea? Grazie

risposta

9

Per ottenere il valore che si desidera:

list(mpl.rcParams['axes.prop_cycle'])[1]['color']) 

C'è un open PR per aggiungere un metodo by_key per Cycler oggetti quindi questo alla fine sarà

mpl.rcParams['axes.prop_cycle'].by_key()['color'][1] 

Ci sono anche alcune discussioni sulla mappatura del colore 'c1' al primo colore nello prop_cycle, ma non è ancora stato implementato.

Sono l'autore principale dei documenti del ciclista, quali dettagli aggiuntivi vorresti vedere lì?

+0

lista (plt.rcParams ['axes.prop_cycle']) [1] ['colore'] funziona bene! Grazie Per quanto riguarda i documenti, spiega bene come creare un termociclatore ma non era molto esplicito sul modo di utilizzare il ciclatore esistente, come ad esempio axes.prop_cycle. – Arthur

2
colors = [color['color'] for color in list(mpl.rcParams['axes.prop_cycle'])] 
colors[1] 

è un modo per ripristinare il vecchio utilizzo. La prima riga restituisce una matrice di colori 2-D.