Matplotlib-Stil funktioniert nicht in Pandas Bar Plot

Der Code, den ich verwendet habe, um die Bar-Plot wie pro Pandas Visualisierung Tutorial zu produzieren .

import pandas as pd import matplotlib.pyplot as plt import numpy as np plt.style.use('ggplot') np.random.seed(123456) ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000)) ts = ts.cumsum() df = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list('ABCD')) df = df.cumsum() plt.figure() df.ix[5].plot(kind='bar'); plt.axhline(0, color='k') plt.show() 

Ich bekomme:

Bar-Plot mit matplotlib Standard-Farben, wenn ggplot Farben erwartet

Ich erwartete, die Balkenfarben wie im Tutorial (Zinnoberrot) zu bekommen, stattdessen sind die Stäbe die Standard-Matplotlib-blaue Farbe.

Ich vermute, das Problem ist in Pandas. Farben sind richtig, wenn Pandas nicht benutzt wird.

 import matplotlib.pyplot as plt import numpy as np plt.style.use('ggplot') fig, ax = plt.subplots() x = np.arange(5) y1, y2 = np.random.randint(1, 25, size=(2, 5)) width = 0.25 ax.bar(x, y1, width) ax.bar(x + width, y2, width) ax.set_xticks(x + width) ax.set_xticklabels(['a', 'b', 'c', 'd', 'e']) plt.show() 

Ich habe meine Umgebung mit conda.

 In [22]: pd.__version__ Out[22]: u'0.17.1' 

Wie bekomme ich Pandas die richtigen Farben?

  • Wie kann ich eine Handlung mit einem festen Seitenverhältnis bekommen?
  • Matplotlib.pyplot Konturfunktion führt Löcher oder Lücken ein, wenn sie regelmäßige Daten verzeichneten
  • Wie zeichnet man Balkendiagramm interaktiv auf der Grundlage des Wertes des Dropdown-Widgets in Bokeh-Python?
  • Matplotlib: Füge twin y Achse hinzu, ohne seine Werte in den Plots zu verwenden
  • Füge Polarachsen zum kartesischen Plot in Matplotlib hinzu
  • Platzieren von benutzerdefinierten Bildern in einem Plot-Fenster - als benutzerdefinierte Daten-Marker oder um diese Marker zu annotieren
  • Wie gehst du eine vertikale Linie auf einer Zeitreihenfolge in Pandas?
  • KeyError: 'plotly_domain' bei der Verwendung von Plotly, um Scatter-Plot in Python zu tun
  • 2 Solutions collect form web for “Matplotlib-Stil funktioniert nicht in Pandas Bar Plot”

    Wie ali_m in den Kommentaren darauf hingewiesen hat, ist es der Bug in der neuesten Version von Pandas (0.17.1) bei der Verwendung von matplotlib Version 1.5.0.

    Das Update wird in der nächsten Pandas-Version sein.

    Bis die neue Freigabe aus ist, lief ich

     pip install git+git://github.com/pydata/pandas.git@master 

    In meiner conda Umgebung, um die neuesten Fixes zu bekommen.

    Dieser Fehler scheint jetzt behoben zu sein. Ich bekomme vermillion Bars, wenn ich den Code in der ursprünglichen Frage ausführe.

    Python ist die beste Programmiersprache der Welt.