2017-12-05 3 views
0

Ich habe in letzter Zeit mit Bokeh zum Plotten gearbeitet. Ich habe gerade von Holo-Views erfahren und wollte einen einfachen Box-Plot erstellen. .Holoviews Farbe pro Kategorie

In meinem Box-Plot ich je eine der Kategorien, um Farbe versuche ich, in die Daten am Gruppierung Hier ist der Code ich verwende:

hv.extension('bokeh') %opts BoxWhisker (box_color='blue') boxwhisker = hv.BoxWhisker(pool_ride_distance_time_year_less_hour, ['total_time', 'customer'], 'amount') plot_opts = dict(show_legend=False, width=800, height=400)

ich versuche es anders zu färben nach zu der Kundenvariablen (was eine Ja/Nein-Dummy-Variable ist). Wenn ich versuche, eine Liste in box_color aufzunehmen, funktioniert es nicht. Auch das Hinzufügen einer zusätzlichen Variablen mit Farbe im Datensatz funktioniert nicht. Irgendwelche Ideen, wie es funktioniert? Vielen Dank!

Antwort

3

Die meisten Elemente in HoloViews haben eine color_index Plotoption, die das Färben mit einer bestimmten Variablen ermöglicht. In diesem Beispiel färben wir nach der Variablen 'customer' und definieren ein HoloViews Cycle für die box_color mit der Set1 Colormap.

data = (np.random.randint(0, 3, 100), np.random.randint(0, 5, 100), np.random.rand(100)) 
boxwhisker = hv.BoxWhisker(data, ['total_time', 'customer'], 'amount') 
plot_opts = dict(show_legend=False, width=800, height=400, color_index='customer') 
style_opts = dict(box_color=hv.Cycle('Set1')) 
boxwhisker.opts(plot=plot_opts, style=style_opts) 

Wenn Sie eine benutzerdefinierte Gruppe von Farben definieren möchten, können Sie auch eine explizite Zyklus wie folgt definieren: Cycle(values=['#ffffff', ...]).

Verwandte Themen