How to show legend for different colors in bokeh scatter field?

This is my plot .
I need to show a legend about the different colors used.
How to do it?

My code for the plot:

def mscatter(p, x, y, c,typestr,source):
    p.scatter(x, y, marker=typestr,
            line_color="#6666ee", fill_color=c, fill_alpha=0.5, size=y*1.5,source = source)

p = figure(title="CGPA of 4th year students",tools=[hover])
mscatter(p, xdata, ydata, colors,"circle",source)
show(p)

      

+3


source to share


1 answer


here is an example of bokeh documentation on adding legends

You will need to change as you like.

from collections import OrderedDict
from bokeh.charts import Scatter, output_file, show

# (dict, OrderedDict, lists, arrays and DataFrames of (x, y) tuples are valid inputs)
xyvalues = OrderedDict()
xyvalues['python'] = [(1, 2), (3, 3), (4, 7), (5, 5), (8, 26)]
xyvalues['pypy'] = [(1, 12), (2, 23), (4, 47), (5, 15), (8, 46)]
xyvalues['jython'] = [(1, 22), (2, 43), (4, 10), (6, 25), (8, 26)]

scatter = Scatter(xyvalues, title="Scatter", legend="top_left", ylabel='Languages')

output_file('scatter.html')
show(scatter)

      



the above code will result in the following image:

scatterplot

+2


source







All Articles