0x90
0x90

Reputation: 40982

How to plot a scatter figure on bokeh with both description and distinct fill_color array?

I tried the following, but the colors remain blue.

from bokeh.plotting import figure, show, output_file, ColumnDataSource


TOOLS="hover,crosshair,pan,wheel_zoom,zoom_in,zoom_out,box_zoom,undo,redo,reset,tap,save,box_select,poly_select,lasso_select,"



source = ColumnDataSource(data=dict(
        x=[1,2,3,4,5,6], 
        y=[2,2,4,5,6,7],
        desc=['type1', 'type1', 'type2','type2','type1','type1'],
        fill_color=['green','grey','grey','red','red','red'], 
        #fill_alpha=0.6, 
        #line_color=None
    ))

TOOLTIPS = [
        ("index", "$index"),
        ("(x,y)", "($x, $y)"),
        ("desc", "@desc"),
        ("fill_color", "@fill_color")]

p = figure(tools=TOOLS,  plot_width=1000, tooltips=TOOLTIPS)
p.scatter(x='x',y='y', source=source)
output_file("color_scatter.html", title="color_scatter.py example")
show(p)  # open a browser

enter image description here

How can I have both labels and unique color on a bokeh's scatter?

Upvotes: 0

Views: 213

Answers (1)

bigreddot
bigreddot

Reputation: 34568

You have not told scatter to use the color data from your data source:

p.scatter(x='x', y='y', fill_color='fill_color', source=source)

Upvotes: 1

Related Questions