2017-02-15 5 views
0

Ich verwende Seaborn, um ein horizontales Balkendiagramm zu erstellen. Von this Beispiel, hier ist, wie ich Farben einstelle.Seaborn automatische Farbauswahl

sns.set_color_codes("pastel") 
sns.barplot(x="total", y="abbrev", data=crashes, label="Total", color="b") 

So in diesem Beispiel das Feld ‚Gesamt‘ die Farbe „b“ (für blau) hat aus der „Pastell“ Palette.

Ich habe rund 60 verschiedene Felder, und ich möchte nicht alle Farben manuell einstellen. Gibt es eine Möglichkeit, Seaborn die Farben (und sogar die Palette) automatisch auswählen zu lassen?

Da es mein Plan steht, ist die barplots in einem Zyklus

for field in fields: 
    sns.set_color_codes(foo) 
    sns.barplot(x=field, y="abbrev", data=crashes, label=field, color="bar") 

wo foo und bar zu schaffen sind für mich irgendwie erzeugt durch Seaborn.

Antwort

3

Sie können das Argument palette= in der Barplot-Methode verwenden, wie in der Dokumentation Seaborn Barplot angegeben.

Ein wirklich gutes Beispiel für Werte, die Sie palette Verfahren bereitstellen kann, ist bei Seaborn Color Palette

my_palette = sns.color_palette("muted") 
sns.barplot(x=field, y="abbrev", data=crashes, label=field, palette=my_palette) 
+0

Dank zur Verfügung. Dies funktionierte gut zusammen mit 'my_palette = sns.color_palette (" Set1 ", n_colors = len (fields), desat = .5)' und setze dann 'palette =" Set1 "'. –

+0

Großartig. Zu Ihrer Information, verschiedene Farbpaletten können auch kombiniert werden, um eine andere zu erstellen, d. H. Sie können einige Farben aus ** Set1 ** und ** Set2 ** verwenden, um Ihre eigenen zu erstellen. –