Un notebook Jupyter on-line a dimostrazione del codice e che mostra le differenze di colore e ': https://anaconda.org/walter/pandas_seaborn_color/notebookPerché la tavolozza dei colori Seaborn non funziona con i grafici a barre di Pandas?
I colori sono sbagliati quando faccio trame a barre utilizzando il metodo dataframe Panda. Seaborn migliora la tavolozza dei colori di matplotlib. Tutti i grafici di matplotlib utilizzano automaticamente la nuova tavolozza Seaborn. Tuttavia, i grafici a barre dei frame di Pandas ritornano ai colori non Seaborn. Questo comportamento non è coerente, in quanto i grafici a linee di Pandas dataframes do utilizzano i colori Seaborn. Questo rende le mie trame apparire in stili diversi, anche se uso Panda per tutti i miei grafici.
Come si può tracciare usando i metodi Panda mentre si ottiene una tavolozza di colori Seaborn coerente?
Sto eseguendo questo in python 2.7.11 utilizzando un ambiente conda con solo i pacchetti necessari per questo codice (panda, matplotlib e seaborn).
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame({'y':[5,7,3,8]})
# matplotlib figure correctly uses Seaborn color palette
plt.figure()
plt.bar(df.index, df['y'])
plt.show()
# pandas bar plot reverts to default matplotlib color palette
df.plot(kind='bar')
plt.show()
# pandas line plots correctly use seaborn color palette
df.plot()
plt.show()
* 1. * Qual è la tua domanda specifica - vuoi sapere una soluzione (e possibile soluzione) o vuoi conoscere il motivo di questo comportamento? * 2. * Questa informazione potrebbe essere correlata alla tua domanda: 'pyplot.scatter' non usa i colori del mare (di default?). – kazemakase
Grazie kazemakase. Ho modificato la domanda per chiarire che mi piacerebbe sapere come posso tracciare usando i metodi Panda mentre ottengo una tavolozza di colori Seaborn coerente. (Naturalmente, conoscendo il motivo può essere utile a quanto sopra.) – Walter