So geben Sie einem Pandas / Matplotlib-Balkendiagramm benutzerdefinierte Farben

Ich habe gerade damit begonnen, pandas / matplotlib als Ersatz für Excel zu verwenden, um gestapelte Balkendiagramme zu generieren. Ich stoße auf ein Problem

(1) Die Standard-Farbkarte enthält nur 5 Farben. Wenn ich also mehr als 5 Kategorien habe, werden die Farben wiederholt. Wie kann ich mehr Farben angeben? Idealerweise ein Verlauf mit einer Startfarbe und einer Endfarbe und eine Möglichkeit, dazwischen n Farben dynamisch zu generieren?

(2) Die Farben sind optisch nicht sehr ansprechend. Wie lege ich einen benutzerdefinierten Satz von n Farben fest? Oder ein Farbverlauf würde auch funktionieren.

Ein Beispiel, das beide oben genannten Punkte veranschaulicht, ist unten:

  4 from matplotlib import pyplot
  5 from pandas import *
  6 import random
  7 
  8 x = [{i:random.randint(1,5)} for i in range(10)]
  9 df = DataFrame(x)
 10 
 11 df.plot(kind='bar', stacked=True)

Und die Ausgabe lautet wie folgt:

Antworten auf die Frage(3)

Ihre Antwort auf die Frage